Vue如何獲取下拉框中選中的value值和label值
Vue獲取下拉框中選中的value值和label值
使用v-for循環(huán)渲染選擇項(xiàng),如下圖例子
例子中allVillage為數(shù)組,每個(gè)數(shù)組元素是對(duì)象,對(duì)象中含有id和name

:value與v-model的值是互相綁定的,可以在data中定義變量進(jìn)而直接獲取到

如圖,可以通過this,paneOneForm.villageId拿到value中綁定的id值
獲取選中的文本值,即label值,結(jié)合使用數(shù)組的find方法
let obj = {}
obj = this.allVillage.find((item) => item.id === this.paneOneForm.villageId)
this.paneOneForm.villageName = obj.name此處paneOneForm.villageName即下拉框選中的文本label值
Vue獲取下拉框的選中值以及下標(biāo)
<select class="select" v-on:change="indexSelect($event)" v-model="pcNum">
<option v-for="(item, index) in pcArr" :key="index" v-bind:value="item.pcNum">{{ item.pcNum }}</option>
</select>js:
data() {
return {
pcNum:'PC20200924',
pcArr:[
{id:1, pcNum: 'PC20200924'},
{id:2, pcNum: 'PC20200925'},
{id:3, pcNum: 'PC20200926'}
],
}
},
methods:{
indexSelect(e){
console.log(e)
console.log(e.target.selectedIndex) // 選擇項(xiàng)的index索引
console.log(e.target.value) // 選擇項(xiàng)的value,也就是v-bind:value 的綁定值,如果換成 v-bind:value="item.id",則打印的是 選中項(xiàng)的id
}
}
擴(kuò)展:
獲取下拉框選中項(xiàng)的其他值,如選中藍(lán)色妖姬時(shí)獲取它的英文名 bluerose
<select class="select select2" @change="classSelect($event)" v-model="classs">
<option v-for="(item, index) in classsArr" :key="index" v-bind:value="item.name">{{ item.name }}</option>
</select>js:
data() {
return {
classs:'',
classsArr: [{name: "藍(lán)色妖姬", table: "bluerose"}, {name: "煙葉",table: "tobaccoleaf"},{name: "佛手瓜", ?table: "chayote"}]
};
},
methods: {
classSelect(e){
var table=''
for (var i in this.classsArr) {
i=e.target.selectedIndex
table=this.classsArr[i].table
}
console.log(table)
},
}或者
<select class="select select2" @change="classSelect" ?v-model="classs"> <option v-for="item in classsArr" :key="item.table" v-bind:value="item.table" :label="item.name"></option> </select>
js:
data() {
return {
classs:'',
classsArr: [{name: "藍(lán)色妖姬", table: "bluerose"}, {name: "煙葉",table: "tobaccoleaf"},{name: "佛手瓜", ?table: "chayote"}]
};
},
methods: {
classSelect(){
console.log(this.classs)
},
}
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue-cli項(xiàng)目中遇到的eslint的坑及解決
這篇文章主要介紹了vue-cli項(xiàng)目中遇到的eslint的坑及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04
Vue3中的Teleport與Portal的區(qū)別分析
在現(xiàn)代前端開發(fā)中,特別是使用Vue.js進(jìn)行構(gòu)建時(shí),開發(fā)者常常面臨著如何更有效地管理DOM結(jié)構(gòu)與組件之間的關(guān)系的問題,Vue 3引入了兩個(gè)頗具魅力的概念——Teleport和Portal,本文將深入探討這兩者的不同之處,需要的朋友可以參考下2025-01-01
Nginx部署Vue.js前端項(xiàng)目的實(shí)現(xiàn)
本文主要介紹了Nginx部署Vue.js前端項(xiàng)目指南,幫助您實(shí)現(xiàn)從開發(fā)到線上部署的平滑過渡,確保用戶能夠獲得最佳的訪問體驗(yàn),感興趣的可以了解一下2024-09-09
element日期選擇器el-date-picker樣式圖文詳解
最近寫的項(xiàng)目里面有一個(gè)功能是日期選擇功能,第一反應(yīng)是使用element里面的el-date-picker組件,下面這篇文章主要給大家介紹了關(guān)于element日期選擇器el-date-picker樣式的相關(guān)資料,需要的朋友可以參考下2022-09-09
基于Vue3實(shí)現(xiàn)一個(gè)簡(jiǎn)歷生成工具
本文介紹如何從零開始構(gòu)建一個(gè)基于 Vue3 + Markdown 的在線簡(jiǎn)歷生成工具,支持實(shí)時(shí)編輯預(yù)覽、模板切換、自定義樣式配置以及導(dǎo)出為 PDF,感興趣的小伙伴可以參考閱讀本文2025-07-07
vue 的keep-alive緩存功能的實(shí)現(xiàn)
本篇文章主要介紹了vue 的keep-alive緩存功能的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
從入門到精通詳解Vue如何實(shí)現(xiàn)防止重復(fù)提交
作為經(jīng)歷過大型項(xiàng)目洗禮的前端工程師,小編深知重復(fù)提交問題絕非簡(jiǎn)單的按鈕禁用就能解決,今天,就將帶大家構(gòu)建一套生產(chǎn)級(jí)的重復(fù)提交防御體系,涵蓋從基礎(chǔ)到架構(gòu)的全套方案2025-06-06

