vue动态循环出的多个select出现过的变为disabled
2024-08-30 20:06:07
<template>
<div class="artcle">
<el-form
label-width="100px"
:model="testForm">
<el-form-item
v-for="(vtem, index) in testForm.version"
:key="index"
label="命令版本">
<el-select
@change="comChange"
v-model="vtem.ver">
<el-option
v-for="item in versionList"
:key="item.id"
:value="item.id"
:disabled="item.id == vtem.ver || selectedArr.includes(item.id)"
:label="item.name">
</el-option>
</el-select>
<el-button
icon="el-icon-circle-plus-outline"
size="small"
@click="add(index)"
circle></el-button>
<el-button
icon="el-icon-remove-outline"
size="small"
@click="remove(index)"
:disabled="index === 0"
circle></el-button>
</el-form-item>
<el-form-item
label="测试输入框">
<el-input
v-model="testForm.input"></el-input>
</el-form-item>
</el-form>
</div>
</template>
export default {
name: 'home',
data () {
return {
selectedArr: [], // 作为判断是否重复的数组
testForm: {
version: [
{ ver: '' }
],
input: ''
},
versionList: [
{ id: 1, name: '1.1' },
{ id: 2, name: '1.2' },
{ id: 3, name: '1.3' }
]
}
},
methods: {
add () {
let version = this.testForm.version
if (version.length < this.versionList.length) {
this.testForm.version.push({
ver: ''
})
} else {
alert('命令版本就三条')
}
},
remove (index) {
this.selectedArr.splice(index, 1)
this.testForm.version.splice(index, 1)
},
// 下拉改变时
comChange (index) {
this.selectedArr = []
for (let item of this.testForm.version) {
if (item.ver) {
this.selectedArr.push(item.ver)
}
}
}
}
}
最新文章
- DDD 主题交流会总结及计划
- [转]TortoiseSVN文件夹及文件图标不显示解决方法
- tcp ip detatils
- js foreach比for多出两个undefined
- Delphi下使用OpenOffice+JodConverter+SWFtools进行文件转换
- JSP&;Servlet学习手册
- Java数据类型BooleanDemo
- HDU 4291 A Short problem(2012 ACM/ICPC Asia Regional Chengdu Online)
- id,is的用法,小数据池的概念及编码知识进阶
- 有关static静态方法知识的收集
- SpriteBuilder给节点添加effect在32设备上发生crash
- .NET ThreadPool算法
- 在Intellij IDEA中使用Maven的方式将项目导出为jar包
- LODOP用ADD_PRINT_IMAGE语句缩放打印图片
- antd + node.js + mongoose小总结
- python gevent自动挡的协程切换。
- [Spark][Python]获得 key,value形式的 RDD
- CRM模块
- django-chunks文件
- JVM(四)JVM的双亲委派模型
热门文章
- linux下如何使用docker二进制文件安装_docker离线安装
- vmware vsphere各版本差别,及各套件差别
- 【转】SQL2008 链接Oracle 调用存储过程
- Zookeeper:Unable to read additional data from client sessionid 0x00, likely client has closed socket
- Navicat连接MySQL8.0出现1251-Client does not support authentication protocol requested by server;
- PHP计算思源字体宽度, 并把文字绘制到图片上
- phpspreadsheet 中文文档(二) 结构+自动筛选
- vue双循环或者多循环作用于同一元素时,在外套template标签
- POJ-图论-最短路模板(邻接矩阵)
- Dockerfile HEALTHCHECK健康检查