easyui使用json创建树形菜单

HTML 元素

<div id="menuAccordion"></div>

JavaScript 代码

$(function() {
    var basePath = $('#basePath').val();

    // 初始化
    $('#menuAccordion').accordion({
        fillSpace: true,
        fit: true,
        border: false,
        animate: false
    });

    $.post(basePath + 'sys/menu/tree', {type: 1}, function(data) {
        if(data) {
            $.each(data, function(index, item) {
                var selected = false;
                if (index == 0) {
                    selected = true;
                }
                // Accordion 折叠面板
                $('#menuAccordion').accordion('add', {
                    title: item.text,
                    content: "<ul id='menu_tree_" + item.id + "'></ul>",
                    selected: selected
                });
                // 树形菜单
                $('#menu_tree_' + item.id).tree({
                    data: item.children,
                    onClick: function(node) {
                        if (node.children.length != 0) {
                            return;
                        }
                        // 添加选项卡
                        addTab('tabs', node.text, node.url);
                    }
                });
            });
        }
    }, 'json');
});

/**
 * 添加标签页面板
 * tabsId 标签页 ID
 * title 标签页面板的标题文字
 * url 加载远程内容来填充标签页面板的 URL
 */
function addTab(tabsId, title, url) {
    var $tabs = $('#' + tabsId);
    if($tabs.tabs('exists', title)) {
        $tabs.tabs('close', title);
    }
    $tabs.tabs('add', {
        title: title,
        href: url,
        closable: true
    })
}

数据格式(JSON)

[
    {
        "id": 1,
        "parentId": 0,
        "url": "javascript:void(0)",
        "text": "系统设置",
        "checked": false,
        "state": "open",
        "children": [
            {
                "id": 2,
                "parentId": 1,
                "url": "sys/menu/index",
                "text": "菜单管理",
                "checked": false,
                "state": null,
                "children": []
            },
            {
                "id": 3,
                "parentId": 1,
                "url": "sys/role/index",
                "text": "角色管理",
                "checked": false,
                "state": null,
                "children": []
            },
            {
                "id": 4,
                "parentId": 1,
                "url": "sys/user/index",
                "text": "用户管理",
                "checked": false,
                "state": null,
                "children": []
            }
        ]
    },
    {
        "id": 8,
        "parentId": 0,
        "url": "javascript:void(0)",
        "text": "基础设置",
        "checked": false,
        "state": "open",
        "children": []
    }
]

转载于:https://my.oschina.net/u/930279/blog/804206

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值