Vue 多选下拉框值每组名字的只能选一个

2023-10-18 07:12

本文主要是介绍Vue 多选下拉框值每组名字的只能选一个,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

先普及一下,下拉框怎么实现多选

// 下拉框实现多选 select标签加一个 multiple 即可 
<el-select v-model="value1" multiple placeholder="请选择"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"></el-option></el-select>

比如,
下拉框值:
测试流程1环节1,测试流程1环节2,
测试流程2环节1,测试流程2环节1
多选的时候,每个流程选项选择的时候只能选择一个值,比如选择流程1环节1,再选择流程1环节2,那多选框选中值只保留展示流程1环节2,不保留流程1环节1,选择流程2环节1,则多选框选中值就为“流程1环节2”,“流程2环节1”

// 界面组件先加上change事件
<el-select v-model="value1" multiple placeholder="请选择"
@change="changeValue"><el-optionv-for="item in options":key="item.value":label="item.label":value="item.value"></el-option></el-select>
//js事件changeValue(val){// 获得所有下拉框中的值let allSelect = this.options;// 已经选中的值let a = this.value1;//选中两个值才开始比较if (a.length > 1) {let nameStr;for (let i = 0; i < allSelect.length; i++) {let item = allSelect[i];if (item.value=== val[val.length - 1]) {// 得到选中的值和全部的值匹配得到相对应的name值let codeName = item.label;// 截取前5个字nameStr = codeName.substring(0, 5);if (!utils.isEmpty(nameStr)) {break;}}}//如果截取到值,开始循环选中的值,作比较if (!utils.isEmpty(nameStr)) {for (let j = 0; j < a.length - 1; j++) {let selectItem = a[j];allSelect.forEach((allItem) => {if (selectItem === allItem.value) {let name = allItem.lable.substring(0, 5);if (nameStr=== name) {this.value1.splice(j, 1);}}});}}}},

这篇关于Vue 多选下拉框值每组名字的只能选一个的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/231032

相关文章

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Vue3视频播放组件 vue3-video-play使用方式

《Vue3视频播放组件vue3-video-play使用方式》vue3-video-play是Vue3的视频播放组件,基于原生video标签开发,支持MP4和HLS流,提供全局/局部引入方式,可监听... 目录一、安装二、全局引入三、局部引入四、基本使用五、事件监听六、播放 HLS 流七、更多功能总结在 v

Linux命令rm如何删除名字以“-”开头的文件

《Linux命令rm如何删除名字以“-”开头的文件》Linux中,命令的解析机制非常灵活,它会根据命令的开头字符来判断是否需要执行命令选项,对于文件操作命令(如rm、ls等),系统默认会将命令开头的某... 目录先搞懂:为啥“-”开头的文件删不掉?两种超简单的删除方法(小白也能学会)方法1:用“--”分隔命

vue监听属性watch的用法及使用场景详解

《vue监听属性watch的用法及使用场景详解》watch是vue中常用的监听器,它主要用于侦听数据的变化,在数据发生变化的时候执行一些操作,:本文主要介绍vue监听属性watch的用法及使用场景... 目录1. 监听属性 watch2. 常规用法3. 监听对象和route变化4. 使用场景附Watch 的

Vue实现路由守卫的示例代码

《Vue实现路由守卫的示例代码》Vue路由守卫是控制页面导航的钩子函数,主要用于鉴权、数据预加载等场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、概念二、类型三、实战一、概念路由守卫(Navigation Guards)本质上就是 在路

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv