当前位置:   article > 正文

elementUI 表格多选框this.$refs.xxx.toggleRowSelection无效_element-ui的的table方法togglerowselection勾选不生效

element-ui的的table方法togglerowselection勾选不生效

elementUI官方实例中,multipleSelection代表选中的值,toggleRowSelection(row,selection)方法用于原先已选的值传入进行勾选,row传递被勾选行的数据,selected设置是否选中。

需求是每次打开弹窗都会重新获取表格数据,并且要选中对应的数据,但直接使用那个方法并没有效果,因为表格中的数据还没有请求出来。
解决:第一步获取数据后在需要进行勾选操作的外面套一个$nextTick(并没完全实现)

 this.$nextTick(() => {
        checkedList.forEach((row) => {
          this.$refs.multipleTable.toggleRowSelection(row,true);
        });
      });
  • 1
  • 2
  • 3
  • 4
  • 5

$nextTick 是在下次 DOM 更新循环结束之后执行延迟回调,在修改数据之后使用 $nextTick,则可以在回调中获取更新后的 DOM。
但这样任然无法正常显示
解决:这里通过从所有列表tableData中找到需要选中的项来帮助选中,直接使用选中列表来设置会出错
最终代码

 this.$nextTick(() => {
        checkedLi.forEach((row) => {
          this.$refs.multipleTable.toggleRowSelection(
            this.list.find((item) => {
              return row.FIELD_CODE == item.FIELD_CODE; 
            }),
            true
          );
        });
      });
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

我的博客主页 :https://qingmuzhang.gitee.io/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/114264?site
推荐阅读
相关标签
  

闽ICP备14008679号