1 回答
TA贡献1784条经验 获得超9个赞
有几种直接的方法。
首先,您可以通过简单地添加方法并以本机方式获取选项,从而从select元素中获取所选项目。
submitFunc在组件的方法选项中创建一个方法,在该方法中,查询select元素。
new Vue({
//...
methods: {
submitFunc: function(){
let select = this.$el.querySelector('#mySelect'); //add an id for ease
let selectedOption = select.options[select.selectedIndex];
console.log(selectedOption); //will output the element, you can get the value at this point.
//do something else
}
}
})
其次,感谢@Kokodoko,您可以通过selectedItem在data选项中声明一个属性,将其附加v-model到select元素的属性中,然后通过submitFuncmethod访问它来使用Vue的双向数据绑定。
new Vue({
el: '#app',
data: {
classes: [],
selectedItem: null //this will be your selected option
},
methods:{
submitFunc: function(){
const selectedItem = this.selectedItem;
//do something with selectedItem
}
}
});
在模板中
<select v-model="selectedItem">
<option></option>
<option v-for="fruit in class.fruit">{{fruit}}</option>
</select>
<button v-on:click="submitFunc">Submit</button>
添加回答
举报