根据后台返回的JSON来确定table中的checkbox状态有两种方法,根据情况不同可以用不同的方法来进行处理:
- 后台返回数据可控(后台是我们自己的)
在表格的json数据中设置LAY_CHECKED为true,表格上的对应行的checkbox就是选中状态了。
const system = [
{ id: 1, type: 'windows', LAY_CHECKED: true },
{ id: 2, type: 'nuix', LAY_CHECKED: false },
{ id: 3, type: 'centos', LAY_CHECKED: true }
]
- 后台返回数据不可控(后台属于第三方接口)
如果我们不能控制后台返回的数据内容(例如第三方接口返回的JSON数据),而且返回的JSON里根本没有LAY_CHECKED属性我们就需要修改layui里监控checkbox选中的变量了,这个变量可以进行自行定义。
layui.use('table', function() {
var $ = layui.$;
var table = layui.table;
// 继承table属性后修改监控checkbox选中的变量为我们返回JSON里面定义是否选中的字段名
**table = $.extend(table, {
config: {
checkName: 'CheckedStatus'
}
});**
// 渲染table
table.render({
...
});
});
通过以上两种方法可以完美实现动态选中table内的checkbox选中状态