读书人

Jquery-easyUI treegrid 异步加载有关

发布时间: 2012-05-15 14:35:29 作者: rapoo

Jquery-easyUI treegrid 异步加载问题
JS代码:

JScript code
$(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代码:
Java code
@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是可以加载数据的,
Java code
logger.debug(jSONObject.toString());
这里也可以正确的输出。但是treegrid就是不行。
这里的写法是不是有问题?正确的写法是什么呢?

[解决办法]
会了教我
[解决办法]
struts2可以直接return json,不用自己写write的。
LZ的这种方式,我没在struts2试过。
[解决办法]
这个是 json的格式
JScript code
[{    "id":1,    "text":"Folder1",    "iconCls":"icon-ok"},{    "text":"Languages",    "state":"closed",    "children":[{        "id":"j1",        "text":"Java"    },{        "id":"j2",        "text":"C#"    }]}] 

读书人网 >JavaScript

热点推荐