开发者社区> 问答> 正文

怎样把A表的某个多选勾选的部分赋值给B表的某个表同样被勾选过的部分(B表勾选部分取AB表多选交集)

上一个提问可能没表达清楚,所以再发一个详细提问求具体操作方法,希望是具体方法,因为目前卡在JS部分。 image.png (表A中的多选可以被勾选的部分) image.png (表B中多选可以被勾选的部分)

实际使用时候是这样,我在A表中按照需要勾选一部分目前订单的状态。在另外一个审批流程里,有一个B表其中有多选(B表中部分流程和A表是有交集的) 我希望在B表里用子表单调用A表里某条数据,在调用的同时,B表和A表交集部分对应被勾选的选项B表自动被选中 image.png 前面有答主教了JS实现的部分办法,我尝试了没成功,可能对JS理解有问题,如何正确的知道B表对应table的名称我还不理解,希望大神能具体指点一下错误的地方。

export function onChange_checkbox({value}) { console.log('onChange_checkbox', value); // 获取A表中已勾选的数据 var checkedData = this.$('checkboxField_ld7m85gz').getValue(); // 遍历B表中的多选按钮 var checkboxes = document.querySelectorAll('#checkboxField_ld7m204c input[type="checkbox"]'); for (var i = 0; i < checkboxes.length; i++) { // 如果B表中的多选按钮的值与A表中已勾选的数据相同,则将其勾选上 if (checkedData.indexOf(checkboxes[i].value) > -1) { checkboxes[i].checked = true; } } }

checkboxField_ld7m85gz 这个是B表子表单里调取到A表勾选过的数据,对应图三顶上那些被选到过的2-订货,3-发货什么的

checkboxField_ld7m204c 是B表中4-安装,5-培训...zhebuf这部分的唯一ID,我不知道 var checkboxes = document.querySelectorAll('#checkboxField_ld7m204c input[type="checkbox"]'); 这句话这么表达是不是错误的,希望大神指正下错误。并帮详细的告知一下正确的解决方案。

展开
收起
游客qc6otdh7i3y4g 2023-03-12 22:03:25 658 0
1 条回答
写回答
取消 提交回答
  • 鹏哥冠名:成都B王

    你就是想B表取AB某多选组件的交集

    1.获取A表多选组件1多选数据 A表多选组件1数据:['选项1','选项2','选项3']

    2.B表多选组件1变化进行交集判断,赋值给B表多选组件2 B表多选数据['选项2','选项3']

    取2个组件的多选交集
    _.intersection(['选项1','选项2','选项3'],['选项2','选项3']);
    得到['选项2','选项3']
    

    赋值给B表多选组件2

    2023-03-13 11:42:06
    赞同 1 展开评论 打赏
问答分类:
问答地址:
关联地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载