根据多选下拉框选中的结果,循环输出选中的标签<el-cascader>;对象数组由二维变成一维
下面的图是要实现的交互图,根据<el-cascader>中v-model绑定的数据,再去下拉框出书数据中进行比对输出

v-model绑定的数据是一个二维数组,是这样的一组数据
[[1,12],[1,24]]
而下拉框的初始数据也是一个对象数组,类似于这样的一个结构
[{
"id": 1,
"label": "电视媒体",
"children": [{
"id": 43,
"label": "教育科技"
}, {
"id": 44,
"label": "公共新闻"
}, {
"id": 45,
"label": "民生休闲"
}, {
"id": 46,
"label": "钱江都市"
}, {
"id": 47,
"label": "浙江经视"
}]
}, {
"id": 2,
"label": "电台媒体",
"children": [{
"id": 6,
"label": "FM99.6民生广播"
}, {
"id": 7,
"label": "FM88浙江之声"
}, {
"id": 48,
"label": "FM107私家车广播"
}, {
"id": 49,
"label": "FM95经济广播"
}, {
"id": 50,
"label": "FM96.8音乐调频"
}, {
"id": 51,
"label": "FM93交通之声"
}]
}, {
"id": 3,
"label": "报纸媒体",
"children": [{
"id": 10,
"label": "钱江晚报"
}, {
"id": 11,
"label": "市场导报"
}, {
"id": 52,
"label": "浙江日报"
}]
}, {
"id": 4,
"label": "城市媒体",
"children": [{
"id": 12,
"label": "人民日报栏"
}, {
"id": 13,
"label": "武林广场巨幔"
}, {
"id": 53,
"label": "公交自行车亭"
}]
}, {
"id": 5,
"label": "交通媒体",
"children": [{
"id": 14,
"label": "萧山机场灯箱"
}, {
"id": 15,
"label": "火车东站灯箱"
}]
}, {
"id": 54,
"label": "校园媒体",
"children": [{
"id": 55,
"label": "平安浙江"
}]
}, {
"id": 56,
"label": "社区媒体"
}]
我需要把下拉框的初始数据由二维变成一维,下面是对象数组由二维变成一维的方法
parseArr(arr, res) {
var i = 0;
for (i = 0; i < arr.length; i++) {
if (arr[i].children && arr[i].children.length > 0) {
this.parseArr(arr[i].children, res);
var t = JSON.parse(JSON.stringify(arr[i]));
delete t.children;
res.push(t);
} else {
res.push(arr[i]);
}
}
}
其中arr是需要转换的数组,res是转换后的数组,传入的时候就是一个空对象
下面就是匹配输出
mediaTypeList() {
let arr = [], str = '', arr1 = [];
this.form.mediumTypeArray.map(item = > {
item.map(ite = > {
this.optionList.map(it = > {
if (it.id == ite) {
arr.push(it.label);
}
});
});
});
arr.map((item, i) = > {
if (2 * i >= arr.length) {
return;
}
str = arr[2 * i] + '/' + arr[2 * i + 1];
arr1.push({
label: str
});
console.log(arr1, 'arr1');
});
return arr1;
}
输出的样式就是这样的

根据多选下拉框选中的结果,循环输出选中的标签<el-cascader>;对象数组由二维变成一维的更多相关文章
- js怎么能取得多选下拉框选中的多个值?
方法:获取多选下拉框对象数组→循环判断option选项的selected属性(true为选中,false为未选中)→使用value属性取出选中项的值.实例演示如下: 1.HTML结构 1 2 3 4 ...
- bootstrap-multiselect.js多选下拉框初始化时默认选中初始值
bootstrap-multiselect.js多选下拉框默认值设置 一.案例数据格式 二.HTML代码 <select id="msgRoles" multiple=&q ...
- jquery操作select下拉框的各种方法,获取选中项的值或文本,根据指定的值或文本选中select的option项等
简介jquery里对select进行各种操作的方法,如联动.取值.根据值或文本来选中指定的select下拉框指定的option选项,读取select选中项的值和文本等. 这一章,站长总结一下jquer ...
- js多选下拉框
1.js原生实现 1.1:引用JS文件 /*! jQuery v1.12.4 | (c) jQuery Foundation | jquery.org/license */ !function(a,b ...
- 多选下拉框带搜索(aps.net)
自己写了一个带搜索功能的多选下拉框,为了要获取值,就没有封装插件,实现思路 1.一个文本框 做搜索 2.一个文本框显示选中文本,一个隐藏控件存值 3.一个div里面绑定CheckBoxList控件(这 ...
- MVC实现多选下拉框,保存并显示多选项
在"MVC实现多选下拉框"中,主要是多选下拉框的显示,而实际情况通常是:选择多个选项提交后,需要在编辑页把所有选中的项显示出来. 模拟这样的一个场景:一个车迷可能有多个自己喜欢的汽 ...
- 自定义SWT控件二之自定义多选下拉框
2.自定义下拉多选框 package com.view.control.select; import java.util.ArrayList; import java.util.HashMap; im ...
- select2的多选下拉框上传
1.加入multiple: true,属性实现多选下拉框样式 2.下拉框选择后的值是数组类型不要经过数据处理才能进行表单提交 提交的时候原下拉框所在的标签不提交,而是将多选后的值存入页面中的一个隐藏标 ...
- Easyui-Combobox多选下拉框
因为工作需要,引入combobox多选下拉框,并且获取选择的值并以","分开. 效果如下: 代码如下: <html> <head> <title> ...
- Extjs4.2 多选下拉框
//多选下拉框 Ext.define('MDM.view.custom.MultiComboBox', { extend: 'Ext.form.ComboBox', alias: 'widget.mu ...
随机推荐
- Java怎么把多个对象的list的数据合并
1.示例一:创建几个包含Person对象的List,并将它们合并成一个新的List 在Java中,将多个对象的List合并通常涉及到遍历这些List并将它们的元素添加到一个新的List中.这里,我将给 ...
- DOM – Browser Reflow & Repaint
前言 没有深入研究过, 懂个概念就好, 等性能遇到问题在来看看. 以前写的笔记: 游览器 reflow 参考: reflow和repaint引发的性能问题 精读<web reflow> R ...
- Bit, Byte, ASCII, Unicode, UTF, Base64
前言 做项目偶尔会接触到 stream 这个感念,不管是 memory stream 还是 file stream,它们又会提到 bytes. 还有像 Identity – 安全基础知识 中提到的 S ...
- Maven高级——依赖管理
依赖管理 依赖指向当前项目运行所需的jar包,一个项目可以设置多个依赖 依赖传递 依赖具有传递性 直接依赖:在当前项目中通过依赖配置建立的依赖关系 间接依赖:被依赖的资源如果依赖其他资源.当前项目间接 ...
- 《赵渝强》《Docker+Kubernetes容器实战派》新书上市!!!
用一本书掌握Docker与Kubernetes核心内容!!! 本书基于作者多年的教学与实践经验编写,分为上下两篇,共20章. 上篇(第1-11章)介绍Docoker,包含:Docker入门.Docke ...
- ARMv8 寄存器
本文主要介绍 Armv8/v9 指令集架构中常用部分,详细的还是要看 Arm architecture reference manual. ARMv8 架构 ARMv8 架构支持3种指令集: T32, ...
- 4. 说一下ts
TypeScript 是微软基于JavaScript开发的开源编程语言,是js的超集,扩展了js语法并添加了静态类型,可以兼容js所有的运行平台: js 是弱类型语言 , ts 是强类型语言 : js ...
- 通过python提取csv文件中包含某个关键字的单元格
通过python提取csv文件中包含某个关键字的单元格 def search(lines, pattern): previous_lines = [] for li in lines: if patt ...
- HDU-ACM 2024 Day4
T1001 超维攻坚(HDU 7469) 三维凸包,不会. T1002 黑白边游戏(HDU 7470) 显然这道题没有一个固定的最优策略,所以只能 \(\text{dp}\) 决策. 可以倒着做,设 ...
- Java 线程池获取池中所有线程列表的方法
在Java中,获取线程池中所有线程列表并不是一个直接支持的功能,因为线程池的设计通常是为了隐藏和管理底层的线程细节,从而提供更高层次的抽象和并发控制能力.然而,通过一些反射和技巧,我们仍然可以获取到线 ...