elementUI el-select 多选情况下包含全部选项,及获得选中项的label
<template>
<div>
<span style="margin-left:30px;font-weight:bolder;">教练:
<el-select v-model="staffId"
placeholder="请选择"
multiple
collapse-tags
@change="changeStaff"
style="width:180px">
<el-option
v-for="(item, key) in staff"
:key="key"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</span>
</div>
</template>
<script>
export default {
data() {
return {
staffId: [-1],
isContainAll: true,
staffNmae: [],
staff: [
{ 'value': -1, 'nameCn': '全部' },
{ 'value': 1, 'nameCn': '张三' },
{ 'value': 2, 'nameCn': '李四'},
{ 'value': 3, 'nameCn': '王五' },
{ 'value': 4, 'nameCn': '潇潇' },
{ 'value': 5, 'nameCn': '小美'},
{ 'value': 6, 'nameCn': '赵琴' },
{ 'value': 7, 'nameCn': '张玲' }
]
}
},
methods: {
// 定义一个变量,用来存储当前下拉框是否选中了全部
if (this.isContainAll) {
// 只有下拉框的值发生了变化才会进入此方法
// 如果之前选中了全部,则变化后肯定不包含全部了
this.isContainAll = false
// 则删除第一个全部
this.staffId.splice(0, 1)
} else {
// 如果之前没有选中全部
// 判断此次是否选中了全部
this.isContainAll = this.staffId.some(value => value === -1)
// 如果此次选中了全部
if (this.isContainAll) {
// 则去除其他,只保留全部,默认value=-1 是全部
this.staffId = [-1]
} else {
// 如果当前不包含全部,则判断是否其他的七个日期全选了
if (this.staffId.length === this.staff.length - 1) {
// 如果其他员工全选了,则也将当前置为全部
this.staffId = [-1]
this.isContainAll = true
}
}
}
// 当没有选中任何教练时,将当前置为全部
if (this.staffId.length === 0) {
this.staffId = [-1]
this.isContainAll = true
}
// 如果选择全部
if (this.isContainAll === true) {
this.staffName = ['全部']
} else {
// 获得选中教练的姓名
for (let i = 0; i < this.staffId.length; i++) {
let obj = this.staff.find((item) => {
return item.value === this.staffId[i]
})
this.$set(this.staffName, i, obj.label)
}
}
}
</script>
elementUI el-select 多选情况下包含全部选项,及获得选中项的label的更多相关文章
- element-ui select多选情况下获取label和value
直接上代码 <el-select v-model="value" multiple collapse-tags ref="select" @change= ...
- @Select注解的情况下,重载的报错
在编写代码的时候,我对查询这个方法进行了重载,这样调用的时候会根据参数的不同,进而去执行不同的操作,但是......问题来了.想法都是美好的,实际情况却不是我理想的状态.运行代码的时候他动了几下,然后 ...
- 大型情感剧集Selenium:4_老中医教你(单/多/下拉框)选项定位 #华为云·寻找黑马程序员#
今天讲什么 讲什么标题说了,讲selenium的单选.多选.下拉框选项定位.但其实这东西,没什么太多说的,又比较枯燥,那该怎么让这一集selenium的课程变得有趣呢?有请老中医,哈哈- 怎么样,这个 ...
- 在element-ui的select下拉框加上滚动加载
在项目中,我们需要运用到很多来自后端返回的数据.有时是上百条,有时甚至上千条.如果加上后端的多表查询或者数据量过大,这就导致在前端的显示就会及其慢,特别是在网络不好的时候更是如此. 自然,后端就做了一 ...
- vue结合element-ui 的select 全选问题
下拉列表多选 问题 通过操作 所有来进行全选 全不选问题 element-ui 中 select 记录下自己最近使用element-ui 中的 select多选问题 在element中默认是指单纯多选 ...
- 默认情况下,不使用of子句表示在select所有的数据表中加锁(转)
Select …forupdate语句是我们经常使用手工加锁语句.通常情况下,select语句是不会对数据加锁,妨碍影响其他的DML和DDL操作.同时,在多版本一致读机制的支持下,select语句也不 ...
- [VS] - "包含了重复的“Content”项。.NET SDK 默认情况下包括你项目中的“Content”项。
copy to :http://www.cnblogs.com/jinzesudawei/p/7376916.html VS 2017 升级至 VS 2017 v15.3 后,.Net Core 1 ...
- 关于datagridview中checkbox列在选中行的情况下无法操作值
这几天做项目的时候碰到了个小问题,在datagridview中实现对checkbox列的全选和反选功能.代码如下 //全选 if (dataGrid ...
- 数据库SQL调优的几种方式 EFcore读的情况下使用 AsNoTracking非跟踪查询
不要用GUID 当主键 没有规律 可以用雪花ID DBA 优化法则 硬件资源是根本,DBA是为了充分利用硬件资源 一般清空下可以不使用外键 可以提高性能 合理使用临时表 临时表分页; 一些查询语句加w ...
随机推荐
- Python的网络编程 Socket编程
Socket是进程间通信的一种方式,与其他进程间通信的一个主要不同是:能实现不同主机间的进程间通信,网络上各种各样的服务大多都是基于Socket来完成通信的,要解决网络上两台主机间的通信问题,首先要唯 ...
- MySQL(27):行锁、表锁、乐观锁、悲观锁
1. 首先说一下:行锁 和 表锁 主要是针对锁粒度划分的. 一般分为:行锁.表锁.库锁 (1)行锁:访问数据库的时候,锁定整个行数据,防止并发错误. (2)表锁:访问数据库的时候,锁定整个表数据,防 ...
- C. Serval and Parenthesis Sequence 【括号匹配】 Codeforces Round #551 (Div. 2)
冲鸭,去刷题:http://codeforces.com/contest/1153/problem/C C. Serval and Parenthesis Sequence time limit pe ...
- C++:引用的简单理解
前言:引用是C++一个很重要的特性,最近看了很多有关引用的资料和博客,故在此对引用的相关知识进行总结 一.什么是引用 引用,顾名思义是某一个变量或对象的别名,对引用的操作与对其所绑定的变量或对象的操作 ...
- Spring源码分析(二十三)BeanFactory的后处理
摘要: 本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 目录 一.激活注册的 BeanFactoryPostProcessor ...
- SSH免密码登录远程linux服务器
Linux下实现SSH无密码验证登陆 ssh配置 主机A:10.0.5.199 主机B:10.0.5.198 需要配置主机A无密码登录主机A,主机B 先确保所有主机的防火墙处于关闭状态. 在主机A上执 ...
- nagios client 端的安装配置 以及 svr端对应的配置(转)
1.下载安装包并解压 $ wget wget http://www.nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz$ wget http ...
- Angular动态表单生成(八)
动态表单生成之拖拽生成表单(下) 我们的动态表单,最终要实现的效果与Form.io的在线生成表单的效果类似,可以参考它的demo地址:https://codepen.io/travist/full/x ...
- U盘安装咱中国人自己的操作系统UbuntuKylin14.04LST(超具体原创图文教程)
本文仅供參考,在准备级安装过程中出现的一切意外情况均与本文作者无关!原创教程转载请注明原转载地!系统简单介绍:UbuntuKylin 是Ubuntu官方认可的衍生版,其宗旨是创建一个Ubuntu的中文 ...
- LeetCode 队列与BFS--岛屿的数量
tags = ["leetcode","队列","BFS","C++","Go"] 岛屿的个数 给定 ...