LayUI的CheckBox没有禁止选中功能,添加一个禁止选中功能。
- 找到src里面lay下面的modules文件夹里面的table.js
- 添加
disableName: 'LAY_DISABLED' //是否禁用
config: {
checkName: 'LAY_CHECKED', //是否选中状态的字段名
indexName: 'LAY_TABLE_INDEX', //下标索引名
disableName: 'LAY_DISABLED' //是否禁用
} //全局配置项
-
找到区域模板里面的
lay-filter="layTableAllChoose"
-
在后面添加如下代码添加
{{# if(item2[d.data.disableName]){ }} disabled {{# }; }}
-
查找
checkName = table.config.checkName;
– 替换为
checkName = table.config.checkName,
disableName = table.config.disableName;
修改逻辑代码
if (item3[checkName]) {
item1[checkName] = item3[checkName];
return item3[checkName] ? 'checked' : '';
} else if (item3[disableName]) {
return item3[disableName] ? 'disabled' : '';
}
return tplData[checkName] ? 'checked' : '';
}() + ' ' + function() {
//如果是禁用
if (item3[disableName]) {
return item3[disableName] ? 'disabled' : '';
}
return tplData[disableName] ? 'disabled' : '';
}() + '>';
break;
//childs = that.layBody.find('input[name="layTableCheckbox"]'),//该行替换成下面一行
childs = that.layBody.find('input[name="layTableCheckbox"]:not(:disabled)'),
//that.setCheckData(i, checked);该行替换成下面两行
var index = $(this).closest("tr").data("index");
that.setCheckData(index, checked);