layui的table单击行勾选checkbox功能方法

▼魔方 西西 提交于 2019-12-17 20:38:59

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

为大家分享一篇layui的table单击行勾选checkbox功能方法,具有很好的参考价值,希望对大家有所帮助。

如下所示:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

//单击行勾选checkbox事件

$(document).on("click",".layui-table-body table.layui-table tbody tr", function () {

 var index = $(this).attr('data-index');

 var tableBox = $(this).parents('.layui-table-box');

 //存在固定列

 if (tableBox.find(".layui-table-fixed.layui-table-fixed-l").length>0) {

  tableDiv = tableBox.find(".layui-table-fixed.layui-table-fixed-l");

 } else {

  tableDiv = tableBox.find(".layui-table-body.layui-table-main");

 }

 var checkCell = tableDiv.find("tr[data-index=" + index + "]").find("td div.laytable-cell-checkbox div.layui-form-checkbox I");

 if (checkCell.length>0) {

  checkCell.click();

 }

});

$(document).on("click", "td div.laytable-cell-checkbox div.layui-form-checkbox", function (e) {

 e.stopPropagation();

});

实现原理:找到table的div绑定单击事件到表格的行:

1、取得行的索引data-index,为后面查找checkbox的控件作准备

2、根据是否有固定列查找checkbox所在的表格table(当存在固定列时,固定列是另一个table,checkbox控件就在这上面,因此要优先取这个)

3、通过table和data-index查找checkbox控件”td div.laytable-cell-checkbox div.layui-form-checkbox I”,如果存在,则执行单击

4、对td的单击事件进行拦截停止,防止事件冒泡再次触发上述的单击事件5、将此代码在页面初始化后执行一次即可以。

实现效果:单击行,自动选中或取消勾选。

以上这篇layui的table单击行勾选checkbox功能方法就是小编分享给大家的全部内容了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!