原地址:https://segmentfault.com/q/1010000011589626
iview框架select选择框on-change事件如何返回当前选中的值?
这是文档中的解释:
on-change 选中的Option变化时触发,默认返回 value,如需返回 label,详见 label-in-value 属性
这里如何绑定该事件获取到当前选中值的索引呢?
找到解决方法了:
1、只获得value,
在select组件上绑定@on-change="selectChange" 方法
在methods中该方法要传入参数value,然后输出value即可获取到value值。
如果想要获取索引,可以把索引绑定在option的label上,并且在select上加:label-in-value=true,最后会连label一起返回一个对象。
{
value:'111',
label,"aaa"
}
2、可以传递多个参数
如果传递多个参数,需要把当前选中的参数也传进去,@on-change="selectChange($event,a,b)"
$event就是当前选中的值,a,b是另外两个参数。
<Select v-model="status" style="width:160px;height:30px;" @on-change='change_status(status)'>
<Option v-for="item in status_list" :value="item.id" :key="item.value" >{{ item.name }}</Option>
</Select>
然后在script中的
methods:{
change_status(){ // 筛选状态
console.log(this.status)
},
}
这就能输出你的值了
记住用@on-change 不要用‘:’ 会造成死循环