当前位置: 首页 > 知识库问答 >
问题:

vue.js - el-table多选 选中一条数据,其他一样id的也被选中,如何实现?

洪增
2023-09-14

image.png

选中其中一条数据之后,一样id的也被选中,这怎么实现啊

共有2个答案

邵华皓
2023-09-14

1、selection-change事件可以监听选择框的改变事件,里面的数据是所有已选中的数据,可以通过这个拿到所有已选中的id集合
2、根据上面获取的id集合从table data中筛选出所有相同id的数据
3、遍历上面符合的数据,使用toggleRowSelection(row, true)设置选中状态(可跟第二步的遍历一起进行)

靳越
2023-09-14

可以通过监听el-table的selection-change事件,并在事件触发时将一样id的数据也选中。具体步骤如下:

  1. 在el-table上添加selection-change事件的监听器:
<el-table @selection-change="handleSelectionChange" ... >  ...</el-table>
  1. 在methods中定义handleSelectionChange方法,该方法将被触发选中状态发生变化时:
methods: {  handleSelectionChange(selection) {    // 获取当前选中的数据    const selectedData = selection[0];        // 通过数据中的id属性,筛选出与选中数据的id相同的其他数据,并设置选中状态    this.tableData.forEach(item => {      if (item.id === selectedData.id) {        this.$refs.table.toggleRowSelection(item, true);      }    });  }}

其中,tableData为el-table的数据源,$refs.table为el-table的引用,toggleRowSelection方法用于控制数据的选中状态。

这样,当选中一条数据后,与之具有相同id的其他数据也会被选中。

 类似资料:
  • el-table有一个筛选功能,筛选和重置都没有问题;但是表格上面还有单独写的查询功能,现在的业务要求是点击上面的查询按钮,可以获取到筛选那儿都勾选了哪些,去做查询,目前不清楚如何获取到勾选的数据。 因为只有点击了筛选或重置才会触发事件,了解到勾选了哪些,现在触发查询在另外一个地方,不知道应该怎么办了 希望获取到勾选的数据。

  • 选中“第一键”复选框时,我想选中并禁用“第二键”复选框 html代码 为复选框键入脚本代码 } 通过使用此代码,key 2复选框被选中并禁用。但是key 2复选框的布尔值仍然是假的。当我单击key 1复选框时,关于如何将key 2复选框的布尔值更改为true的任何建议我正在使用Angular 8及其反应式形式模块。我是角度新手。

  • el-table中设置tree-props树形数据勾选完成后怎么回显选中状态

  • 本文向大家介绍input:checkbox多选框实现单选效果跟radio一样,包括了input:checkbox多选框实现单选效果跟radio一样的使用技巧和注意事项,需要的朋友参考一下 最近遇到一个小小的问题,就是有时候我们使用单选radio的时候,会发现当我们选中一个之后,再也无法一个都不选了,即选中后没有取消的功能,此时便想到了功能强大的checkbox,但他是多选,怎么才能让他变成单选,效

  • 我想选择数据表()的特定行值(此处),其中过滤条件位于其他数据表()中。它不是一个精确的过滤器,因为如果我在中有值3,我在中就有这个值的最小值和最大值变量。此外,我有一个字符串,其中包含特定的模式。例如: 中的 和 中的相应行包含 , 和 ,即 。 我在寻找这个值所在的范围和最大目标值的直线。 我有以下简化的例子: 看起来像这样: 我包括<code>大小 到目前为止,我的解决方案如下: 我写了一个

  • 本文向大家介绍el-select 下拉框多选实现全选的实现,包括了el-select 下拉框多选实现全选的实现的使用技巧和注意事项,需要的朋友参考一下 在写一个功能时发现el-select支持多选,但是竟然不支持全选,好无语哦,那就自己实现一下吧~有两种方法,第二种感觉简单些 方法一:下拉项增加一个【全选】,然后应该有以下几种情况: 下拉选项全都勾选时,【全选】自动勾选; 下拉选项部分勾选时,点击