vue實(shí)現(xiàn)el-select默認(rèn)選擇第一個(gè)或者第二個(gè)
el-select默認(rèn)選擇第一個(gè)或者第二個(gè)
框架用的是若依,字典
這是el-select

這是data里面定義的 直接寫(xiě)個(gè) 1 就是第一個(gè)

這是頁(yè)面

select下拉框的默認(rèn)選中項(xiàng)的三種情況
在Vue中 使用select下拉框 主要靠的是 v-model 來(lái)綁定選項(xiàng) option 的 value 值。
select下拉框在界面的展示,我們都希望看到框中有一個(gè)值 而不是空白,比如顯示 “請(qǐng)選擇” 或者 “全部” 的默認(rèn)值。先來(lái)看效果圖

關(guān)于select選項(xiàng)的寫(xiě)法 有三種情況
- ①.寫(xiě)在HTML中
- ②.寫(xiě)在JS一個(gè)數(shù)組中
- ③.通過(guò)接口去獲取得到
我們直接上代碼:
第一種
是option的值寫(xiě)在HTML中
<div id="app">
<select name="status" id="status" v-model="selected">
<option value="">請(qǐng)選擇</option>
<option value="1">未處理</option>
<option value="2">處理中</option>
<option value="3">處理完成</option>
</select>
</div>
<script>
new Vue({
el:'#app',
data:{
selected:''
//默認(rèn)選中項(xiàng)的value值是什么 就給綁定的屬性什么值 這里默認(rèn)選中項(xiàng)請(qǐng)選擇的value值是空 我們就給綁定的屬性 select 一個(gè)空值
},
})
</script>
第二種
是option 選項(xiàng)內(nèi)容寫(xiě)在JS中的,通過(guò)v-for來(lái)遍歷的:
<body>
<div id="app">
<select name="status" id="status" v-model="selected">
<option :value="item.statusId" v-for="(item,index) in statusArr">{{item.statusVal}}</option>
</select>
</div>
</body>
<script>
new Vue({
el:'#app',
data:{
statusArr:[
{
statusId:'0',
statusVal:'請(qǐng)選擇'
},
{
statusId:'1',
statusVal:'未處理'
},
{
statusId:'2',
statusVal:'處理中'
},
{
statusId:'3',
statusVal:'處理完成'
},
],
selected:''
},
created(){
// 在組件創(chuàng)建之后,把默認(rèn)選中項(xiàng)的value值賦給綁定的屬性
//如果沒(méi)有這句代碼,select中初始化會(huì)是空白的,默認(rèn)選中就無(wú)法實(shí)現(xiàn)
this.selected = this.statusArr[0].statusId;
}
})
</script>
第三種
是option 選項(xiàng)內(nèi)容 通過(guò)接口去獲取 但是接口里沒(méi)有默認(rèn)選中項(xiàng)怎么辦呢?看代碼
<body>
<div id="app">
<select name="status" id="status" v-model="selected">
<!-- 由于從接口獲取的select的下拉值沒(méi)有‘請(qǐng)選擇',所以我們要自己寫(xiě)一個(gè) -->
<option value="">請(qǐng)選擇</option>
<option :value="item.statusId" v-for="(item,index) in statusArr">{{item.statusVal}}</option>
</select>
</div>
</body>
<script>
new Vue({
el:'#app',
data:{
statusArr:[], //用來(lái)接收從接口里獲取出來(lái)的select下拉框里的值
selected:''
},
getSelectInfo(){
var url = "../monitor_admin_front/device/status"; //接口地址
axios.get(url)
.then(response => {
if(response.data.retCode == 0){
this.statusArr = response.data.data; //將獲取出來(lái)的數(shù)據(jù)賦給定義的數(shù)組 以便于去循環(huán)遍歷
}
})
},
created(){
this.getSelectInfo();
}
})
</script>
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue?瀏覽器本地存儲(chǔ)的問(wèn)題小結(jié)
這篇文章主要介紹了Vue?瀏覽器本地存儲(chǔ),LocalStorage 和 SessionStorage 統(tǒng)稱(chēng)為 WebStorage,存儲(chǔ)大小一般支持5mb左右,但是不同的瀏覽器也有區(qū)別,具體內(nèi)容介紹跟隨小編一起看看吧2022-04-04
vue.js評(píng)論發(fā)布信息可插入QQ表情功能
這篇文章主要為大家詳細(xì)介紹了vue.js評(píng)論發(fā)布信息可插入QQ表情功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08
vue3+vue-router+vite實(shí)現(xiàn)動(dòng)態(tài)路由的全過(guò)程
動(dòng)態(tài)路由是根據(jù)不同情況實(shí)時(shí)變化的路由,在權(quán)限管理系統(tǒng)中,動(dòng)態(tài)路由常用于根據(jù)用戶(hù)角色分配不同的菜單和功能,這篇文章主要介紹了vue3+vue-router+vite實(shí)現(xiàn)動(dòng)態(tài)路由的相關(guān)資料,需要的朋友可以參考下2024-10-10
Vue自定義指令實(shí)現(xiàn)對(duì)數(shù)字進(jìn)行千分位分隔
對(duì)數(shù)字進(jìn)行千分位分隔后展示應(yīng)該是大部分同學(xué)都做過(guò)的功能了吧,常規(guī)的做法通常是編寫(xiě)一個(gè)工具函數(shù)來(lái)對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,那么我們可不可以通過(guò)vue指令來(lái)實(shí)現(xiàn)這一功能呢,下面我們就來(lái)探索一下呢2024-02-02
vue3 setup訪問(wèn)子組件的 DOM 元素的示例代碼
使用setup的情況下這個(gè)時(shí)候我們無(wú)法使用this,注意在setup中setup是封閉的,不會(huì)將子組件事件暴露出來(lái),所以要用defineExpose(),這篇文章主要介紹了vue3 setup訪問(wèn)子組件的 DOM 元素,需要的朋友可以參考下2023-08-08
Composition Api封裝業(yè)務(wù)hook思路示例分享
這篇文章主要為大家介紹了Composition Api封裝業(yè)務(wù)hook的思路示例分享,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
Vue CLI3中使用compass normalize的方法
這篇文章主要介紹了Vue CLI3中使用compass normalize的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-05-05

