时间:2021-05-28
项目里经常会用到,在一个多选下拉框里新增一个选择所有的选项,例如:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" rel="external nofollow" rel="external nofollow" > <script src="https://unpkg.com/element-ui/lib/index.js"></script></head><body> <div id="app"> <el-form> <el-form-item> <el-select placeholder="请选择活动区域" multiple v-model="citys"> <el-option v-for="item in cities" :label="item.label" :value="item.value" :key="item.value"></el-option> </el-select> </el-form-item> </el-form> </div> <script> new Vue({ el:"#app", data:{ cities: [ {value: 'Beijing',label: '北京'}, {value: 'Shanghai',label: '上海'}, {value: 'Nanjing',label: '南京'}, {value: 'Chengdu',label: '成都'}, {value: 'Shenzhen',label: '深圳'}, {value: 'Guangzhou',label: '广州'} ], citys:[] } }) </script></body></html>渲染如下:
此时可以多选,如果想要选择所有选项时,得一个个去点击,这样不是很方便,我们可以在下拉框里新增一个选择所有的选项,通过watch用几行代码就可以实现与其它选项的互斥来实现一键多选,如下:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css" rel="external nofollow" rel="external nofollow" > <script src="https://unpkg.com/element-ui/lib/index.js"></script></head><body> <div id="app"> <el-form> <el-form-item> <el-select placeholder="请选择活动区域" multiple v-model="citys"> <el-option label="选择所有" value="all"></el-option> <el-option v-for="item in cities" :label="item.label" :value="item.value" :key="item.value"></el-option> </el-select> </el-form-item> </el-form> </div> <script> new Vue({ el:"#app", data:{ cities: [ {value: 'Beijing',label: '北京'}, {value: 'Shanghai',label: '上海'}, {value: 'Nanjing',label: '南京'}, {value: 'Chengdu',label: '成都'}, {value: 'Shenzhen',label: '深圳'}, {value: 'Guangzhou',label: '广州'} ], citys:[] }, watch:{ citys:function(val,oldval){ if(val.indexOf('all')!=-1 && oldval.indexOf('all')==-1 && val.length>1){ //如果新的选择里有勾选了选择所有选择所有 则 只直线勾选所有整个选项 this.citys=['all']; }else if(index = val.indexOf('all')!=-1 && oldval.indexOf('all')!=-1 && val.length>1){ //如果操作前有勾选了选择所有且当前也选中了勾选所有且勾选数量大于1 则移除掉勾选所有 this.citys.splice(val.indexOf('all'),1) } } } }) </script></body></html>这样就可以互斥了,我们选择北京和上海时,选择器如下:
点击选择所有时,如下:
然后再点击其它选项,选择所有就会取消勾选了,例如选择深圳:
这样实现了选择所有和其它选择项的互斥,而其它选择又可以多选。
总结
以上所述是小编给大家介绍的Element ui 下拉多选时新增一个选择所有的选项,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了jQuery模拟html下拉多选框的原生实现方法。分享给大家供大家参考,具体如下:用js,html,css简单的实现一个HTML下拉多选框,不试用
axure中想要制作一个下拉多选部门的控件,可以应用在企业管理或者BPM相关流程等场景,例如选择只给保安部门的人发消防通知,该怎么制作呢?下面我们就来看看详细的
本文为大家分享了BootStrapselectpicker后台动态绑定数据的方法,供大家参考,具体内容如下html部分代码这是一个下拉多选框,现在要动态往里添加
现在市面上的很多的应用,都带有下拉列表的功能,将所有选项都放在下拉列表中,当用户点击选择的时候,弹出所有的选项,用户选择一项后,下拉列表自动隐藏,很多下拉列表都
首先我们先打开一个PPT文档,打开之后在菜单栏里有一个“视图”选项。 单击“视图”按钮会下拉很多选项。在下拉的选项里,我们单击“页眉和页脚”按钮。 单击