项目用LayUI进行开发,需求方提出一个范围权限控制的实现方案。在复选框只能单选的前提下,管理员可以取消勾选,查看所有数据,但普通用户由于权限限制,不可以取消勾选。
在查找资料的过程中,发现jq的常用操作checkbox方法不适用于layui,应使用prop代替attr改变checkbox状态。
<input type="checkbox" name="chbBtn" value="@item.ScopeExtand" title="@item.name" lay-skin="primary" lay-filter="oneChoose">
form.on('checkbox(oneChoose)', function (data) {
if (@ViewBag.Islimited.ToString().ToLower() == true) { //权限限制不能全部取消勾选
$("input[name='chbBtn']").prop("checked", false); //全部取消选中
$(this).prop("checked", true); //勾选当前选中的选择框
}
else {