el-select动态禁用

在一个el-form表单中有5个el-form-item;

每个el-form-item是一个el-select控件;

这5个el-select控件遵循这样的规则,都是使用同一个list集合,如果第一个el-select选择了list中的某一项,那么这一项就被禁用;其他的el-selet就不能选择这一项了;

如果第二个el-select选择了list中的某一项,那么这一项和第一个el-select选择的项都禁用,

其他的el-select就不能选择这两项了;以此类推

<template><div><el-form :model='form' :rules="rules" ref="form"><el-form-item v-for="(select, index) in selects" :key="index" :label="'Select ' + (index + 1)"prop="selectedOptions"><el-select v-model="form.selectedOptions[index]" @change="handleSelectChange(index)" @clear="handleSelectClear(index)" clearable><el-option v-for="option in options" :key="option.value" :label="option.label" :value="option.value" :disabled="isOptionDisabled(option.value)"></el-option></el-select></el-form-item><!-- <el-button type="primary" @click="submitForm">Submit</el-button> --></el-form></div>
</template>

Js代码:

<script>
export default {data() {return {options: [{ label: 'Option 1', value: 1 },{ label: 'Option 2', value: 2 },{ label: 'Option 3', value: 3 },{ label: 'Option 4', value: 4 },{ label: 'Option 5', value: 5 }],form:{selectedOptions: [null, null, null, null, null],disabledOptions: [], // 禁用的选项集合},rules: {selectedOptions: [{ required: true, message: 'Please select at least one option', trigger: 'blur' }]}};},computed: {selects() {return Array.from({ length: 5 });}},methods: {// 下拉框选择事件handleSelectChange(index) {this.form.disabledOptions = [];console.log(this.form.selectedOptions,'+++++++ ')for (let i = 0; i < this.form.selectedOptions.length; i++) {if (this.form.selectedOptions[i] !== null) {this.form.disabledOptions.push(this.form.selectedOptions[i]);}}},// 下拉框清除事件handleSelectClear(index) {const clearedValue = this.form.selectedOptions[index];const indexToRemove = this.form.disabledOptions.indexOf(clearedValue);if (indexToRemove !== -1) {this.form.disabledOptions.splice(indexToRemove, 1);}},//是否禁用isOptionDisabled(value) {return this.form.disabledOptions.includes(value);}}
};
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/281565.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

陈巍:Sora大模型技术精要万字详解(上)——原理、关键技术、模型架构详解与应用

​目录 收起 1 Sora的技术特点与原理 1.1 技术特点概述 1.2 时间长度与时序一致性 1.3 真实世界物理状态模拟 1.4 Sora原理 1.4.1扩散模型与单帧图像的生成 1.4.2 Transformer模型与连续视频语义的生成 1.4.3 从文本输入到视频生成 2 Sora的关键技术 2.1 传统文生图技…

详解python中函数的参数传递

在这个用例中&#xff0c;我们要讨论的是关于函数的传参问题 我所使用的python版本为3.3.2 对于函数: def fun(arg):print(arg)def main():fun(hello,Hongten)if __name__ __main__:main() 当我们传递一个参数给fun()函数&#xff0c;即可打印出传递的参数值信息。 这里打印…

【嵌入式学习】Qtday03.21

一、思维导图 二、练习 自由发挥登录窗口的应用场景&#xff0c;实现一个登录窗口界面。&#xff08;不要使用课堂上的图片和代码&#xff0c;自己发挥&#xff0c;有利于后面项目的完成&#xff09; 要求&#xff1a; 1. 需要使用Ui界面文件进行界面设计 2. ui界面上的组件…

OpenAI Q-Star:AGI距离自我意识越来越近

最近硅谷曝出一份54页的内部文件&#xff0c;揭露了去年OpenAI宫斗&#xff0c;导致Altman&#xff08;奥特曼&#xff09;差点离职的神秘项目——Q-Star&#xff08;神秘代号Q*&#xff09;。 根据该文件显示&#xff0c;Q-Star多模态大模型拥有125万亿个参数&#xff0c;比现…

牛客NC196 编辑距离(一)【较难 DFS/DP,动态规划,样本对应模型 Java,Go,PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/6a1483b5be1547b1acd7940f867be0da 思路 编辑距离问题 什么是两个字符串的编辑距离&#xff08;edit distance&#xff09;&#xff1f;给定字符串s1和s2&#xff0c;以及在s1上的如下操作&#xff1a;插入&…

关于安卓MPAnroidChart开发(一)直方图分组坑

背景 安卓开发一个图表显示数据&#xff0c;内容就是对直方图进行分组显示&#xff0c;大概示例如下&#xff1a; 开发环境 win10,as4,jdk8 开发 这里直接说重点。乱七八糟的就掠过了&#xff0c;最后会放出所有相关源码以及封装好的类。 如果对单组的直方图&#xff0c…

docker入门(十)—— docker-compose详解

Docker Compose dockercompose官网&#xff1a;https://docs.docker.com/compose/ 什么是 docker compose Docker Compose 是用于定义和运行多容器应用程序的工具。 这是解锁简化和高效的开发和部署体验的关键。 Compose 简化了对整个应用程序堆栈的控制&#xff0c;让您能…

微信小程序小案例实战

.wxml: <view class "title">狂飙经典语录 </view> <view class"out"><block wx:if"{{listArr.length}}"> <!-- bloock不会影响排版--><view class"list"><view class"row" wx:…

【DP】第十四届蓝桥杯省赛C++ B组《接龙数列》(C++)

【题目描述】 对于一个长度为 K 的整数数列&#xff1a;A1,A2,...,AK&#xff0c;我们称之为接龙数列当且仅当 的首位数字恰好等于 的末位数字 (2≤i≤K)。 例如 12,23,35,56,61,11 是接龙数列&#xff1b;12,23,34,56 不是接龙数列&#xff0c;因为 56 的首位数字不等于 3…

[linux]--关于进程概念(下)

目录 孤儿进程 环境变量 将程序放到PATH路径下 设置PATH环境变量 设置别名 环境变量相关的命令 环境变量的组织方式​编辑 通过系统调用获取环境变量 环境变量通常是具有全局属性的 进程优先级 查看系统进程 用top命令更改已存在进程的nice&#xff1a; 程序地址空…

[游戏开发][UE5.3]GAS学习心得

GAS(GameplayAbilitySystem) UE提供的一套技能框架&#xff0c;这个框架也不是万能的&#xff0c;甚至各个部件你要进行封装开发&#xff0c;但这也比你从头写一套技能框架要容易很多。 GAS功能极其强大&#xff0c;所以它是一个庞大的系统&#xff0c;如果想运用得当&#x…

2024.03.21作业

自由发挥实现一个登录窗口的应用场景 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QPen> #include <QBrush> #include <QPainter> #include <QWidget>QT_BEGIN_NAMESPACE namespace Ui { class Widget; class Painter; } QT_END_NAMESPACE…

把txt、pdf等文件转为一行一行的doccano数据集输入格式

文章目录 doccano 数据集导入简介代码实现代码运行结果代码公开 doccano 数据集导入 在Doccano 导入数据集时&#xff0c;使用TextLine的文件格式&#xff0c;导入的文件需要为一行一行文本的数据格式&#xff0c;每一行文本在导入Doccano后就是一条数据。 简介 主要工作说明…

外包干了3天,技术明显进步。。。。。

先说一下自己的情况&#xff0c;本科生&#xff0c;19年通过校招进入南京某软件公司&#xff0c;干了接近2年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了2年的功能测试&…

Java特性之设计模式【装饰器模式】

一、装饰器模式 概述 装饰器模式&#xff08;Decorator Pattern&#xff09;允许向一个现有的对象添加新的功能&#xff0c;同时又不改变其结构。这种类型的设计模式属于结构型模式&#xff0c;它是作为现有的类的一个包装 装饰器模式通过将对象包装在装饰器类中&#xff0c;以…

cocos 3.8开发 微信小游戏分包技巧压缩主包

Creator 版本&#xff1a; 3.8.2 目标平台&#xff1a;小游戏开发 压缩后 我不知道别人压缩几百kb是怎么做到的。不过哪个要钱。 我这个技巧不用花钱。 论坛有教程但是没有教详细怎么做。 开整&#xff01; 做一个空白的场景。然后写一个load脚本。load主场景。 从代码可…

归并算法详细解析

归并排序 1945年&#xff0c;约翰冯诺依曼&#xff08;John von Neumann&#xff09;发明了归并排序&#xff0c;这是典型的分治算法的应用。归并排序&#xff08;Merge sort&#xff09;是建立在归并操作上的一种有效的排序算法&#xff0c;该算法是采用分治法&#xff08;Di…

数据结构:堆

堆的概念 1.堆是一个完全二叉树 2.小堆(任何一个父亲<孩子),大堆(任何一个父亲>孩子) 堆的结构 物理结构:数组 逻辑结构:二叉树 #pragma once #include<assert.h> #include<iostream> typedef int HPDataType; typedef struct Heap {HPDataType* _a;int…

数据挖掘之关联规则

“啤酒和尿布的荣誉” 概念 项 item&#xff1a;单个的事物个体 &#xff0c;I{i1,i2…im}是所有项的集合&#xff0c;|I|m是项的总数项集&#xff08;item set)/模式&#xff08;pattern)&#xff1a;项的集合&#xff0c;包含k个项的项集称为k-项集数据集(data set)/数据库…

Redis设计原理简介

键值存储模型&#xff1a; Redis是一个基于内存的键值对存储系统&#xff0c;它支持五种基本数据结构&#xff08;字符串String、哈希Hash、列表List、集合Set、有序集合Sorted Set&#xff09;以及几种高级数据结构如Bitmaps、HyperLogLogs等。 单线程架构&#xff1a; Redis采…