vue element select多选回显
我们经常在使用 Element组件里面的 select多选
场景:添加账号的时候需要选择可见分公司(分公司为多选),添加成功之后可以编辑,需要回显添加时所提交的分公司
代码如下:
多选框:
data(){
return{
companyIds: "", //分公司数据id
companyList: [], //分公司列表
companyListAll: { id: "", visibleCompany: "全部" }, //分公司列表
ruleForm: {
company: [], //分公司
},
}}
<el-form-item label="可见分公司:" prop="company">
<el-select
v-model="ruleForm.company"
multiple
collapse-tags
@change="changCompany"
placeholder="请选择可见分公司"
>
<el-option
v-for="item in companyList"
:key="item.id"
:label="item.visibleCompany"
:value="item.id"
></el-option>
</el-select>
</el-form-item>
获取分工公司接口时:
添加一个全部的选项,拼接到分公司里面去,然后把分公司的id 循环取出来(因为向后台传输数据的时候需要传id)
this.$http
.post("/crm/customer/visibleCompanyList")
.then(response => {
//分公司数据
this.companyList = response.data.result;
this.companyList.unshift(this.companyListAll);
let ids = [];
this.companyList.map(item => {
ids.push(item.id);
this.companyIds = ids;
});
})
.catch(res => {
console.error("请求失败", res);
});
//给分公司赋值
changCompany(val) {
let allValues = [];
allValues = this.companyIds; const oldVal =
this.oldSearchJobType.length === 1 ? this.oldSearchJobType[0] : [];
// 若是全部选择
if (val.includes("")) this.ruleForm.company = allValues;
// 取消全部选中 上次有 当前没有 表示取消全选
if (oldVal.includes("") && !val.includes("")) this.ruleForm.company = [];
// 点击非全部选中 需要排除全部选中 以及 当前点击的选项
// 新老数据都有全部选中
if (oldVal.includes("") && val.includes("")) {
const index = val.indexOf("");
val.splice(index, 1); // 排除全选选项
this.ruleForm.company = val;
}
// 全选未选 但是其他选项全部选上 则全选选上 上次和当前 都没有全选
if (!oldVal.includes("") && !val.includes("")) {
if (val.length === allValues.length - 1)
this.ruleForm.company = [""].concat(val);
}
// 储存当前最后的结果 作为下次的老数据
this.oldSearchJobType[0] = this.ruleForm.company;
},
以上代码就完成了多选编辑回显的功能,点击确认编辑的时候
vue element select多选回显的更多相关文章
- thymeleaf单选回显,多选回显,选回显,下拉默认选中第一个
//默认选中第一个<input type ="radio" name="repaymentType" th:each ="repaymentTy ...
- 基于TCP协议 I/O多路转接(select) 的高性能回显服务器客户端模型
服务端代码: myselect.c #include <stdio.h> #include <netinet/in.h> #include <arpa/inet.h> ...
- Vue + Element 实现多选框选项上限提示与限定
上图先,看效果!!! //vue文件夹内<el-form :model="form" class="form-inline"> <!-- :s ...
- Vue+Element+Select获取选中的对象
案例演示:获取select当前选中的所有内容 <el-select v-model="value8" filterable placeholder=&qu ...
- HTML、jsp页面中radio,checkbox,select数据回显功能,默认被选中问题
最近常常遇到各种复选框.单选框.下拉框的默认被选中的问题,开始也是绞尽脑汁的想办法,今天写一篇学习总结的博文来写一下学习总结. 单选框(radio)默认被选中: 一.jstl技术进行回显 <in ...
- Element Select 回显
有思考有痛点的朋友可以聊聊(要求:认真看过Element相关文档,对该场景自己有过多角度的探索) 下拉框回显的关键点:要回显的值包含于下拉列表的数组中 demo图 最近遇到一个需求抽象下:循环中下拉框 ...
- vue + element-ui Table的数据多选,多页选择数据回显,分页记录保存选中的数据。
业务的需要:我要对与会人员勾选,记录所选的与会人员,并且点击到别的页面上时也要记录所勾选的.第一次尝试,每次点击下一页数据都会清空.然后我就去element ui官网查看了api.实现如下: 在tab ...
- 关于【vue + element-ui Table的数据多选,多页选择数据回显,分页记录保存选中的数据】的优化
之前写的[vue + element-ui Table的数据多选,多页选择数据回显,分页记录保存选中的数据]这篇博客.功能虽然实现了相对应的功能.但是用起来很不爽.所以进行了优化. 备注:最近可能没时 ...
- vue 运用ElementUI,做select下拉框回显
第一.加载的顺序,应该先加载下拉框要选择的数据,然后在通过编辑查询数据后回显. 第二.要保证select下拉的ID和v-model里边的id保持一致. 第三.elementUI就会自动的将数据回显了. ...
随机推荐
- Golang 性能测试 (3) 跟踪刨析 golang trace
简介 对于绝大部分服务,跟踪刨析是用不到的.但是如果遇到了下面问题,可以不妨一试: 怀疑哪个协程慢了 系统调用有问题 协程调度问题 (chan 交互.互斥锁.信号量等) 怀疑是 gc (Garbage ...
- MYSQ创建联合索引,字段的先后顺序,对查询的影响分析
MYSQ创建联合索引,字段的先后顺序,对查询的影响分析 前言 最左匹配原则 为什么会有最左前缀呢? 联合索引的存储结构 联合索引字段的先后顺序 b+树可以存储的数据条数 总结 参考 MYSQ创建联合索 ...
- ArrayBlockingQueue和LinkedBlockingQueue的使用
ArrayBlockingQueue和LinkedBlockingQueue的使用 博客分类: java.util.concurrent BlockingQueue接口定义了一种阻塞的FIFO q ...
- Retrofit 网络访问框架简单使用
1.引入远程依赖:包括okhttp;retrofit2;retrofit的GSON解析器 compile'com.squareup.okhttp3:okhttp:3.2.0' compile'com. ...
- Golang——详解Go语言代码规范
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Golang专题的第二篇,我们来看看Go的语言规范. 在我们继续今天的内容之前,先来回答一个问题. 有同学在后台问我,为什么说Gola ...
- 抠脚大叔如何改变性别,Python实现变声器功能
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 乔柯 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...
- ASE课程总结 by 朱玉影
收获: 最大的收获应该就是对待选题要慎重吧,虽然前期做了一下调研,但是还是不够,所以到最后我们的项目才会不能公开发布,项目中间也是波折不断,导致我们走了很多弯路,浪费了很多时间吧.选题一定要慎重,慎重 ...
- work of 1/4/2016
part 组员 今日工作 工作耗时/h 明日计划 工作耗时/h UI 冯晓云 修改UI增强显示鲁棒 6 完成UI页面切换部分 ...
- 移动(appium)自动化测试-爬虫的另一种手段
appium自动化测试环境搭建: 1.Python环境(推荐2.7)和jdk. 2.Adb工具的下载:自己单独下载adb.夜神模拟器自带和Android sdk 3.Apk安装介质:真机.Androi ...
- java 递归及其经典应用--求阶乘、打印文件信息、计算斐波那契数列
什么是递归 我先看下百度百科的解释: 一种计算过程,如果其中每一步都要用到前一步或前几步的结果,称为递归的.用递归过程定义的函数,称为递归函数,例如连加.连乘及阶乘等.凡是递归的函数,都是可计算的,即 ...