实现思路
直接修改复选框选中状态和伪复选框(DIV)Class
但是调用checkStatus获取不到选中的行
查看底层源代码checkStatus方法的实现是缓存数据中的属性来判断是否选中
所以循环缓存数据,用index找到操作数据修改,再次获取选中行就可以获取到了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
table.on('row(userTable)',function(obj){
  var flag = !obj.tr.find(':checkbox:first').prop('checked');
  obj.tr.find(':checkbox').prop('checked',flag);
  if(flag){
    obj.tr.find('.layui-form-checkbox').addClass('layui-form-checked');
  }else{
    obj.tr.find('.layui-form-checkbox').removeClass('layui-form-checked');
  }
  layui.each(table.cache.userTable,function(i,item){
    if(obj.tr.index()==item.LAY_TABLE_INDEX){
      item.LAY_CHECKED=flag;
    }
  });
});