vue.js - 我无法在 vue.js 中使用 datalist 的更改事件,更改事件不起作用
问题描述
我尝试使用 bootstrap-vue 我会自动完成,但我有一些麻烦,我该怎么做
<b-form-input :list="id"></b-form-input>
<datalist :id="id" @change="d => on_select(d)" >
<option v-for="size in sizes" :key="size" :data-value="size" :value="size" />
</datalist>
on_select (t) {
debugger
console.log(t)
},
解决方案
@change
将事件更改为input
元素。
html:
<div id="app">
<b-form-input list="my-list-id" id="input-with-list" @input="changeSelectedItem" ></b-form-input>
<datalist id="my-list-id">
<option v-for="size in sizes">{{ size }}</option>
</datalist>
</div>
零件:
data() {
return {
options: ['1', '2', '3', '4']
}
},
methods: {
changeSelectedItem(e) {
this.option = e
}
}
如果您想获取项目的索引或有关它的其他数据,您可以遍历您的size
列表。