yechi9142 2018-01-08 05:37 采纳率: 0%
浏览 1494
已结题

异步加载时不能返回Json数据

后台代码:
/**
 * 返回数据用于zTree控件树状图显示
 * @return
 */

@ResponseBody
@RequestMapping("getMenuJson")
public List<Map<Object,Object>>  getJson(){
    List<Menu> list=menuService.findList();
    List<Map<Object,Object>>mapList= new ArrayList<>();
    for(int i=0;i<list.size();i++){
        Map <Object,Object> map= new HashMap<Object,Object>();
        map.put("id", list.get(i).getId());
        map.put("name", list.get(i).getName());
        map.put("pId", list.get(i).getParentId());
        map.put("url", list.get(i).getUrl());
        map.put("target", "_blank");
        mapList.add(map);
    }
    System.out.println("异步加载数据成功");
    return mapList;
}

前台代码:

/**************异步加载数据************/
var setting4 = {
async: {
enable: true,
contentType: "application/json",
url:"${ctx}/a/menu/getMenuJson",
/* autoParam:["id", "name=", "level=lv"], */
otherParam:{"otherParam":"zTreeAsyncTest"},
dataFilter: filter
}

    };

function filter(treeId, parentNode, childNodes) {
if (!childNodes) return null;
for (var i=0, l=childNodes.length; i<l; i++) {
childNodes[i].name = childNodes[i].name.replace(/.n/g, '.');/* 把回车换成. */
}

console.log(childNodes);
return childNodes;
}

$(document).ready(function(){
zTreeObj = $.fn.zTree.init($("#treeDemo1"), setting4);
});

使用了SpringMVC框架,此处使用zTree插件来异步加载Menu树状菜单,但是获取到的数据为数组格式,如下:
Array(9)
0
:
{name: "新建菜单", pId: 5, id: 3, url: "/a/menu/add", target: "_blank"}
1
:
{name: "菜单列表", pId: 5, id: 4, url: "/a/menu/list", target: "_blank"}
2
:
{name: "菜单管理", pId: 0, id: 5, url: "/a/menu/", target: "_blank"}
3
:
{name: "人员管理", pId: 0, id: 6, url: "/a/user/", target: "_blank"}
4
:
{name: "人员添加", pId: 6, id: 7, url: "/a/user/add", target: "_blank"}
5
:
{name: "人员列表", pId: 6, id: 8, url: "/a/user/list", target: "_blank"}
6
:
{name: "修改密码", pId: 6, id: 9, url: "/a/user/changePW", target: "_blank"}
7
:
{name: "人员添加1", pId: 7, id: 10, url: "#", target: "_blank"}
8
:
{name: "人员添加2", pId: 7, id: 11, url: "#", target: "_blank"}

请问如何解决 解决

  • 写回答

14条回答 默认 最新

  • 刘信晨 2018-01-08 05:43
    关注

    直接循环去 “data.name”“data.pId”"data.url"

    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?