layui 表格删除多行
1. 创建一个全局变量, 用来存储选中行的类名
var delete_index = [] //监听表格复选框选择 table.on('checkbox(currentTableFilter)', function (obj) { // layui 内置方法 // 自己做处理, 如果是选中 if(obj.checked == true){ delete_index.push(obj.tr['selector']); }else{ // 从列表删除 var index = delete_index.indexOf(obj.tr['selector']); delete delete_index[index] } }); 如果有什么不清楚可以把obj中内容打印出来看下
delete_index 存的数据
[".layui-table-body tr[data-index="2"]", ".layui-table-body tr[data-index="3"]"]
2. 删除表格中数据
layer.msg("成功删除 " + data.data.deleted_count + " 条数据", {icon: 6, time: 1000}, function(){ // 删除 $.each(delete_index, function(i, value){ $("" + value).remove(); }); var new_count = parseInt($(".layui-laypage-count").text().substring(2)) - data.data.deleted_count; $(".layui-laypage-count").text("共 "+ new_count +" 条"); delete_index = []; });
注意: 我们在获取选中的数据使用, layui 内置方式
var checkStatus = table.checkStatus('adminUserTable'); var data = checkStatus.data;
但是从表格删除数据后,
checkStatus.data 原来的值还在.
例如:我第一次选中提交删除 1,checkStatus.data里存放[1]
没有刷新页面, 再次选中提交删除2 那 checkStatus.data 里存放[1, 2]