记录下用vue-select组件实现多选框,分享给大家,也好做个备忘。查看原文
vue-select
github上面一个基于vue实现的一个多选下拉框的组件,地址请点击。
里面文档写的很清楚,对vue.js比较熟悉的童鞋阅读完文档即可实现一个简单的多选框。
效果
可以参考文档中的例子,实现单选下拉框、多选下拉框等效果。
如果options
是一个列表,则下拉框中选择对应每个item
,这个不难理解。当options
是一个嵌套object
的列表时,可以使用label
标签指定显示具体的标签。
比如,点击运行代码:
但是,有时候我们并不需要选择之后保存整个object
。
假如现在有这样一个需求,students
,是一个只包含student_id
的列表,在下拉选择框中选择任何一个student
都只保存其student_id
。在仔细查看了官方提供的文档之后,发现并没有实现这样的功能,所以只能自己想办法解决了。
最终效果,点击运行代码:
实现原理
其实很简单,就是新建一个存放student_obj
的一个list,当触发了下拉框的input事件后,将选择的student的id放到对应的list里面去。