赞
踩
一、
LayUI-表格行内容中的多选框根据需要进行展示(部分不展示)layui
内置没有该功能,所以只能自己通过templet
实现;(见下图中第一个红色框框
里的内容)第二个红色框框
里的内容)
对应代码:
// 自己通过templet实现复选框
{
templet: "#checkbd",
title: "<input type='checkbox' name='siam_all' title='' lay-skin='primary' lay-filter='siam_all'> ",
width: 60,
}
// 实现全选功能
form.on("checkbox(siam_all)", function () {
var status = $(this).prop("checked");
$.each($("input[name=siam_one]"), function (i, value) {
$(this).prop("checked", status);
});
form.render();
});
对应代码:
<script type="text/html" id="checkbd">
{{# if (d.del_status === 0){ }}
<input type="checkbox" name="siam_one" title="" lay-skin="primary" data-id = "{{ d.id }}">
{{# } }}
</script>
CSS
.laytable-cell-checkbox .layui-disabled.layui-form-checked i {
background: #fff !important;
}
id
var ids = [];
$.each($("input[name=siam_one]:checked"), function (i, value) {
ids[i] = $(this).attr("data-id"); // 如果需要获取其他的值 需要在模板中把值放到属性中 然后这里就可以拿到了
});
参考自优秀的博文:https://blog.csdn.net/qq_32837111/article/details/106603149
二、
【补充知识】实现批量删除的代码详情参考我的另外一篇博文【均实现批量删除,但提示内容有所不同】
HTML
<!--头工具栏内容-->
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-xs btn_delete" lay-event="batchdel"><i class="layui-icon layui-icon-delete"></i>批量删除</button>
</div>
</script>
JS
// 头工具栏事件 // 批量删除 table.on('toolbar(test)', function(obj){ //注:toolbar 是头工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值" // var checkStatus = table.checkStatus(obj.config.id); switch(obj.event){ case 'batchdel': // 获取到的数据:id数组 var ids = []; $.each($("input[name=siam_one]:checked"), function (i, value) { ids[i] = $(this).attr("data-id"); // 如果需要获取其他的值 需要在模板中把值放到属性中 然后这里就可以拿到了 }); console.log(ids) if(ids == ''){ layer.alert('请选择删除项');return; } layer.prompt({title: '请填写删除出勤率原因(注:必填项)',},function (value,index, elem) { $.ajax({ url:"{:url('teacherDetailDel')}", type:'post', dataType:'json', data:{ id: ids, reason: value }, success:function(res){ if(res.sta == 2000){ layer.msg(res.msg,{ icon: 1, time: 2000 //2秒关闭(如果不配置,默认是3秒) },function () { layer.close(index); // 表格重载 var name = $('input[name=name]').val() var starttime = $('input[name=starttime]').val() let obj = { name,starttime } active.reload(obj) }); }else{ layer.msg(res.msg,{icon:2}); } } }) }) break; } });
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。