layui框架 table渲染 checkbox 回显

需求:符合某一条件的数据,table渲染的时候checkbox默认是选中状态(Java后台)

1. 使用 LAY_CHECKED 属性:LAY_CHECKED 为 true 则默认选中,false 则默认不选中,添加到表头对所有数据起效。实现以上需求,则需要在每行数据中添加该属性,根据条件判断 LAY_CHECKED 的值为 true 或 false;

2. 问题:在实体类中添加变量 LAY_CHECKED,使用set方法存值会使得LAY_CHECKED字段名在编译时下划线前的字段变为小写,lay_CHECKED,从而导致无法选中;

3. 解决办法:将要传的值使用map封装起来;

public  JsonResult findPeople(Integer comId) {
    List<People> peopleList = pMapper.selectRoleListByName(comId);
    ArrayList<Map<String,Object>> p = new ArrayList<>();
    for (People ro : peopleList) {
        Boolean LAY_CHECKED=false;
        if(ro.getName().equals("管理员")){
            LAY_CHECKED=true;
        }
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("roleId", ro.getRoleId());
        map.put("name", ro.getName());
        map.put("LAY_CHECKED", LAY_CHECKED);
        p.add(map);
    }
    return JsonResult.success("",p);
}
经验分享 程序员 微信小程序 职场和发展