今天想做个ExtJS远程数据加载的树形结构,因为Ext.tree.TreeLoader只支持json对象,不支持数组和xml,所以说通过struts2 json插件直接返回json对象,但是配置后返回的数据是
{"nodeList":[{"id":"root1","leaf":false,"text":"基本信息管理","url":null},{"id":"root2","leaf":false,"text":"销售管理","url":null},{"id":"root3","leaf":false,"text":"进货管理","url":null},{"id":"root4","leaf":false,"text":"库存管理","url":null},{"id":"root5","leaf":false,"text":"系统管理","url":null}]}
而Ext.tree.TreeLoader接受的数据必须是
[{"id":"root1","leaf":false,"text":"基本信息管理","url":null},{"id":"root2","leaf":false,"text":"销售管理","url":null},{"id":"root3","leaf":false,"text":"进货管理","url":null},{"id":"root4","leaf":false,"text":"库存管理","url":null},{"id":"root5","leaf":false,"text":"系统管理","url":null}]
所以说配置文件要添加参数
<result type="json"> <param name="root">nodeList</param> </result>
就是中间那个root,就能去掉前面的属性了
树形搞定...