在使用layui框架时,数据表格是经常使用的一个组件,一般在表格的左侧会有checkbox可以用来勾选当前行的数据,但是checkbox一般是由用户自己手动勾选的,那遇到需要自动勾选的情况怎么办呢?
如果使用dom操作来控制checkbox选中是没有问题的,但是在使用layui的api方法时会获取不到此条被选中的数据,解决该问题的方法有两个。
修改数据方法
在表格的json数据中设置LAY_CHECKED
为true,表格上的对应行的checkbox就是选中状态了。
const data = [
{ id: 1, name: '张三', LAY_CHECKED: true },
{ id: 2, name: '李四', LAY_CHECKED: false },
{ id: 3, name: '王五', LAY_CHECKED: true }
]
修改变量方法
如果返回的数据里没有LAY_CHECKED
属性呢?那么我们就需要修改layui里监控checkbox选中的变量了。
layui.use('table', function() {
var $ = layui.$;
var table = layui.table;
// 修改变量
table = $.extend(table, {
config: {
checkName: 'isChecked'
}
});
// 渲染table
table.render({
...
});
});
这样一来,我们就根据json中控制checkbox选中的变量名称来修改代码就可以了。
如有错误,请多指教,谢谢!