可以将从后台数据库中查找中的权限以List或数组的形式进行封装后,在前端使用jQuery的each方法遍历所有其值符合数组中元素的checkbox,并将其属性设置为checked。
前端代码如下:
$(function(){
var module_ids = ${module_ids};
//选中每个value与数组中value相同的checkbox
$.each(module_ids, function(i,item){
$("input[name=module_ids][value="+item+"]").attr("checked","checked"); <span> </span>
});
});
后端代码:
其中module_ids是从后台封装的权限ID的集合
@RequestMapping("toModifyRole.do")
public String toModifyRole(Integer role_id, HttpServletRequest request){
Role role = roleService.loadSelectedRole(role_id);
List<Integer> module_ids = new ArrayList<Integer>();
for (Module module : role.getModules()) {
module_ids.add(module.getModule_id());
}
//System.out.println(role);
request.setAttribute("role", role);
request.setAttribute("module_ids", module_ids);
return "role/role_modi";
}