JS代码:$(function() { var lastIndex=0; $('#listTable').treegrid({
    title:'菜单编辑',
    width:500,
    height:300,
    rownumbers: true,
    collapsible:true,
    url:'${path}/sys/listChildrenMenusDetailAjax',
    idField:'menuId',
    treeField:'menuId',
    pagination : true,
pageSize : 10,
onLoadSuccess:function(data){
alert(data);
},
columns:[[
        {field:'menuId',title:'菜单ID',width:160},
        {field:'menuName',title:'菜单名称',width:80,align:'right'},
        {field:'menuUrl',title:'菜单URL',width:100}
    ]]
});
});
java代码:
@Action(value = "listChildrenMenusDetailAjax")
public void listChildrenMenusDetailAjax() {
setChannel(ACTION_TYPE.ADMIN);
PrintWriter out;
try {
response.setContentType("text/html;charset=GBK");  
response.setCharacterEncoding("GBK");
out = response.getWriter();
MenuExample menuExample = new MenuExample();
System.out.println();
//menuExample.setRowStartNum((page - 1) * rows);
//menuExample.setRowEndNum((page) * rows);
menuExample.setOrderByClause("MENU_ID");
List<Menu> allMenus= menuService.findMenuByExample(menuExample);
System.out.println(allMenus);
Map<String, Object> outJson = new HashMap<String, Object>();
total =menuService.countByExample(new MenuExample());
outJson.put("total", total);
outJson.put("rows", allMenus);
JSONObject  jSONObject = JSONObject.fromObject(outJson);
logger.debug(jSONObject.toString());
out.write(jSONObject.toString());
} catch (IOException e) {
logger.warn("查询菜单字列表错误!",e);
}
}onLoadSuccess里面的data是null
URL肯定没有错 因为换成datagrid是可以加载数据的,logger.debug(jSONObject.toString());这里也可以正确的输出。但是treegrid就是不行。
这里的写法是不是有问题?正确的写法是什么呢?

解决方案 »

  1.   

    struts2可以直接return json,不用自己写write的。
    LZ的这种方式,我没在struts2试过。
      

  2.   

    用fiddler2 截取可以看到有返回数据但是 为什么不显示数据呢?
      

  3.   

    数据不显示,那就是后台返回的数据格式,跟你treegrid的读取数据要求的格式不一致吧。LZ慢慢调试吧。
      

  4.   

     这个是 json的格式[{
    "id":1,
    "text":"Folder1",
    "iconCls":"icon-ok"
    },{
    "text":"Languages",
    "state":"closed",
    "children":[{
    "id":"j1",
    "text":"Java"
    },{
    "id":"j2",
    "text":"C#"
    }]
    }]jSONObject.toString() 结果是否是一个格式呢 ?
      

  5.   


    treegrid 也需要这个格式?我看官网给的demo里面有一个JSON都不是啊?
    {"total":117,"rows":[
    {"id":1,"code":"code1","name":"name1","addr":"address1"},
    {"id":11,"code":"code11","name":"name11","addr":"address11","_parentId":1},
    {"id":12,"code":"code12","name":"name12","addr":"address12","_parentId":1},
    {"id":2,"code":"code2","name":"name2","addr":"address2","state":"closed"},
    {"id":21,"code":"code21","name":"name21","addr":"address21","_parentId":2},
    {"id":22,"code":"code22","name":"name22","addr":"address22","_parentId":2},
    {"id":3,"code":"code3","name":"name3","addr":"address3","state":"closed"},
    {"id":31,"code":"code31","name":"name31","addr":"address31","_parentId":3},
    {"id":32,"code":"code32","name":"name32","addr":"address32","_parentId":3},
    {"id":4,"code":"code4","name":"name4","addr":"address4","state":"closed"},
    {"id":41,"code":"code41","name":"name41","addr":"address41","_parentId":4},
    {"id":42,"code":"code42","name":"name42","addr":"address42","_parentId":4},
    {"id":5,"code":"code5","name":"name5","addr":"address5"},
    {"id":51,"code":"code51","name":"name51","addr":"address51","_parentId":5},
    {"id":52,"code":"code52","name":"name52","addr":"address52","_parentId":5},
    {"id":6,"code":"code6","name":"name6","addr":"address6","state":"closed"},
    {"id":61,"code":"code61","name":"name61","addr":"address61","_parentId":6},
    {"id":62,"code":"code62","name":"name62","addr":"address62","_parentId":6},
    {"id":7,"code":"code7","name":"name7","addr":"address7","state":"closed"},
    {"id":71,"code":"code71","name":"name71","addr":"address71","_parentId":7},
    {"id":72,"code":"code72","name":"name72","addr":"address72","_parentId":7},
    {"id":8,"code":"code8","name":"name8","addr":"address8","state":"closed"},
    {"id":81,"code":"code81","name":"name81","addr":"address81","_parentId":8},
    {"id":82,"code":"code82","name":"name82","addr":"address82","_parentId":8},
    {"id":9,"code":"code9","name":"name9","addr":"address9","state":"closed"},
    {"id":91,"code":"code91","name":"name91","addr":"address91","_parentId":9},
    {"id":92,"code":"code92","name":"name92","addr":"address92","_parentId":9},
    {"id":10,"code":"code10","name":"name10","addr":"address10","state":"closed"},
    {"id":110,"code":"code110","name":"name110","addr":"address110","_parentId":10},
    {"id":120,"code":"code120","name":"name120","addr":"address120","_parentId":10}
    ]}
      

  6.   

    搞定了 结贴 是Json有问题 !
      

  7.   

    我遇到了和你一样的问题,Json格式问题吗?
      

  8.   

    怎么解决的呀,Json不是你那样写的吗?