博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery-EasyUI异步加载树形菜单
阅读量:6303 次
发布时间:2019-06-22

本文共 3224 字,大约阅读时间需要 10 分钟。

  hot3.png

1】把tree定义在一个空<ul>元素

    2】使用Javascript加载数据

    3】resourceController中的tree方法

    @RequestMapping("/tree")@ResponseBodypublic List
    tree(HttpSession session) { //获取当前账户的用户信息(包括ID/登录名/用户可以访问的资源地址列表) SessionInfo sessionInfo = (SessionInfo) session.getAttribute(ConfigUtil.getSessionInfoName()); return resourceService.tree(sessionInfo);}

    4】resourceService的tree方法

    public List
    tree(SessionInfo sessionInfo) { List
    l = null; List
    lt = new ArrayList
    (); Map
    params = new HashMap
    (); params.put("resourceTypeId", "0");// 菜单类型的资源 if (sessionInfo != null) { params.put("userId", sessionInfo.getId());// 自查自己有权限的资源 l = resourceDao.find("select distinct t from Tresource t join fetch t.tresourcetype type join fetch t.troles role join role.tusers user where type.id = :resourceTypeId and user.id = :userId order by t.seq", params); } else { l = resourceDao.find("select distinct t from Tresource t join fetch t.tresourcetype type where type.id = :resourceTypeId order by t.seq", params); } if (l != null && l.size() > 0) { for (Tresource r : l) { Tree tree = new Tree(); BeanUtils.copyProperties(r, tree); if (r.getTresource() != null) { tree.setPid(r.getTresource().getId()); } tree.setText(r.getName()); tree.setIconCls(r.getIcon()); Map
    attr = new HashMap
    (); attr.put("url", r.getUrl()); tree.setAttributes(attr); lt.add(tree); } } log.info("debug级别的日志输出----"+JSON.toJSONString(lt)); return lt; }

    5】返回的JSON数据如下:

    [    {        "attributes": {},        "checked": false,        "iconCls": "plugin",        "id": "xtgl",        "state": "open",        "text": "系统管理"    },    {        "attributes": {            "url": "/chartController/userCreateDatetimeChart"        },        "checked": false,        "iconCls": "chart_curve",        "id": "userCreateDatetimeChart",        "pid": "chart",        "state": "open",        "text": "用户图表"    },    {        "attributes": {            "url": "/resourceController/manager"        },        "checked": false,        "iconCls": "database_gear",        "id": "zygl",        "pid": "xtgl",        "state": "open",        "text": "资源管理"    },    {        "attributes": {            "url": "/roleController/manager"        },        "checked": false,        "iconCls": "tux",        "id": "jsgl",        "pid": "xtgl",        "state": "open",        "text": "角色管理"    },    {        "attributes": {            "url": "/userController/manager"        },        "checked": false,        "iconCls": "status_online",        "id": "yhgl",        "pid": "xtgl",        "state": "open",        "text": "用户管理"    },    {        "attributes": {            "url": "/bugController/manager"        },        "checked": false,        "iconCls": "bug",        "id": "buggl",        "pid": "xtgl",        "state": "open",        "text": "BUG管理"    },    {        "attributes": {            "url": "/druidController/druid"        },        "checked": false,        "iconCls": "server_database",        "id": "sjygl",        "pid": "xtgl",        "state": "open",        "text": "数据源管理"    }]

    6】返回的JSON,通过onLoadSuccess方法接收,数据就装填进Tree控件里了

    转载于:https://my.oschina.net/zion/blog/821550

    你可能感兴趣的文章
    img垂直水平居中与div
    查看>>
    Fabrik – 在浏览器中协作构建,可视化,设计神经网络
    查看>>
    防恶意注册的思考
    查看>>
    http2-head compression
    查看>>
    C# 命名空间
    查看>>
    订餐系统之同步美团商家订单
    查看>>
    使用ArrayList时设置初始容量的重要性
    查看>>
    Java Web-----JSP与Servlet(一)
    查看>>
    Maven搭建SpringMVC+Mybatis项目详解
    查看>>
    关于量子理论:最初无意的简化,和一些人有意的强化和放大
    查看>>
    CentOS 6.9通过RPM安装EPEL源(http://dl.fedoraproject.org)
    查看>>
    “区块链”并没有什么特别之处
    查看>>
    没有功能需求设计文档?对不起,拒绝开发!
    查看>>
    4星|《先发影响力》:影响与反影响相关的有趣的心理学研究综述
    查看>>
    IE8调用window.open导出EXCEL文件题目
    查看>>
    python之 列表常用方法
    查看>>
    vue-cli脚手架的搭建
    查看>>
    在网页中加入百度搜索框实例代码
    查看>>
    在Flex中动态设置icon属性
    查看>>
    采集音频和摄像头视频并实时H264编码及AAC编码
    查看>>