layui多级联动,点击子节点跳转

前端:

layui.use('tree', function(){
            var tree = layui.tree;
            //渲染
            var inst1 = tree.render({
                elem: '#test1',  //绑定元素
                isJump:true//herf生效,需要这个属性跳转
                ,data: getData(),//获取数据,该方法从后台获取
                click: function(){//这个点击函数是为了改变跳转方式,如果新展开页面就无需写这个方法
                    $(".layui-tree-txt").attr("target","_self");
                },
            });
        });
        function getData(){
            var data = [];
            $.ajax({
                url: "/zhdwapp/dept/depttree",    //后台数据请求地址
                type: "get",
                async:false,
                success: function(resut){
                    data = resut;
                }
            });
            return data;
        };

后台:

    /** 返回部门的tree
     *
     * @return
     */
    @GetMapping("/depttree")
    public Object depttree(ModelMap modelMap,HttpSession session) throws UnknownHostException {
        String deptmentid =session.getAttribute("userdeptmentid").toString();
        Department department = deptService.findDeptsById(deptmentid);
        List<Department> departmentList = new ArrayList<>();
        departmentList.add(department);
        List<HashMap<String, Object>> result = new ArrayList<>();
        return tree(departmentList,result);
    }
    
	private Object tree(List<Department> dpet, List<HashMap<String, Object>> result) throws UnknownHostException {
        LocalDate date = LocalDate.now();
        int year = date.getYear();
        for(Department d : dpet){
            HashMap<String, Object> map = new HashMap<>();
            map.put("id", d.getDepartmentGuid());
            map.put("title", d.getDepartmentName());
            map.put("spread", false);      //设置是否展开
            map.put("href","跳转路径");
            List<HashMap<String, Object>> result1 = new ArrayList<>();
            List<Department> children = deptService.selectSonDeptByid(d.getDepartmentGuid()); //d.getDepartmentGuid();   //下级菜单
            //这里可以根据自己需求判断节点默认选中
            /*if(m.getParent() != null || m.getChildren().size() == 0){
                map.put("checked", true);    //设置为选中状态
            }*/
            map.put("children", tree(children, result1));
            result.add(map);
        }
        return result;
    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值