我从Action得到值就是打印不到页面,而且我已经转换成了jsonArray!!! 前台就是获取不到!! 请各位看看我的代码哪里有出入!
前台页面的ext代码:
Ext.onReady(function() {
var Tree = Ext.tree;
//定义根节点的Loader
var treeloader=new Tree.TreeLoader({
dataUrl:'<%=request.getContextPath()%>/IT_USERAction.do?cmd=getTree' //指定的URL
});
//异步加载根节点
var rootnode=new Tree.AsyncTreeNode({
id:'1',
text:'目录树根节点'
});
var treepanel = new Tree.TreePanel({
//renderTo:"tree_div",
//如果使用renderTo,则不能使用setRootNode()方法,需要在TreePanel中设置root属性。
el:'tree', //填充区域
rootVisible:true, //隐藏根节点
border:true, //边框
animate:true, //动画效果
autoScroll:true, //自动滚动
enableDD:false, //节点是否可以拖拽
containerScroll:true,
//root:rootnode, //两种设置root节点的方法,
//一种配置root,另一种就是setRootNode
loader:treeloader
});
//设置根节点
treepanel.setRootNode(rootnode);
//响应事件,传递node参数
treepanel.render();
rootnode.expand(false,false);
});
后台action代码:
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
System.out.println("构建一棵树");
Map map = new HashMap();
map.put("id", "1");
Object value = new Object();
value = Boolean.TRUE;
map.put("cls", "file");
//是否是叶子节点,我这里只有一层所以直接写的TRUE
map.put("leaf", value);
List list = new ArrayList();
list.add(map);
JSONArray jsonArray = JSONArray.fromObject(list);
response.getWriter().print(jsonArray);
return null;
}
前台永远只有一个根节点,而且已经进入到了Action里面!!
我还想问问怎么在父节点和子节点前面增加chackbox框!!
[b]问题补充:[/b]
yourgame 说的我不是很明白! 因为我刚刚开始看ext方面的东西,我现在需要的是我从后台去拿出数据 所以才调用到action 我看到有些实例是可以从后台直接拿出数据然后转换成jsonArray之后直接可以在页面上面显示出来!!