layui 树形结构遍历渲染

layui 树形结构遍历渲染

layui.use('tree', function(){
        let roleId = Request.roleId;
        let tree_data=[];
        $.ajax({
            type: "get",
            url: http1 + "sys/initMenuInfo",
            async: false,
            data: {
                roleId: roleId
            },
            beforeSend: function(request) {
                request.setRequestHeader("Authorization", sessionStorage.getItem("token"));
            },
            error: function(jqXHR) {
                if(jqXHR.responseText!='' && jqXHR.status ==401){
                    alert(JSON.parse(jqXHR.responseText).msg);
                }
            },
            success: function (res) {
                $.each(res.data, function (index, item) {
                    let children2=[];
                    $.each(item.childMenu, function (index, item2) {
                        let children3=[];
                        $.each(item2.childMenu, function (index, item3) {
                            let obj = {
                                id: item3.menuId,
                                title: item3.menuname,
                                children: []
                            };
                            children3.push(obj);
                        });
                        let obj = {
                            id: item2.menuId,
                            title: item2.menuname,
                            children: children3
                        };
                        children2.push(obj);
                    });
                    let obj = {
                        id: item.menuId,
                        title: item.menuname,
                        children: children2
                    };
                    tree_data.push(obj);
                });
            }
        });
        console.log(tree_data);
        //渲染
        let tree = layui.tree;
        tree.render({
            elem: '#my_tree',
            showCheckbox:true,
            data:tree_data,
            click: function(obj){
                console.log("点击了节点",obj.elem); //得到当前节点元素
            },oncheck: function(obj){
                console.log("点击了复选框",obj.elem); //得到当前节点元素
                console.log(obj.data); //得到当前点击的节点数据
                console.log(obj.checked); //得到当前节点的展开状态:open、close、normal
                console.log(obj.elem); //得到当前节点元素
            }
        });
    });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值