小弟最近刚刚接触ext,在网上查了两天资料还是无解.希望赐教.不胜感激..
get_tree.jsp在tomcat控制台也能成功返回json数据.但页面值显示一个根节点'论坛'.并无返回json的子节点
谢谢了!
生成树.jsp如下
[code="java"]
Ext.onReady(function(){
var Tree = Ext.tree;
var treepanel = new Tree.TreePanel({
rootVisible:true,
border:false,
animate:true,
autoScroll:true,
autoHeight:true,
autoWidth:true,
enableDD:false,
containerScroll:true,
loader:new Tree.TreeLoader({
dataUrl : 'get_tree.jsp'
})
});
var rootnode = new Tree.AsyncTreeNode({
id:'0',
draggable : false,
text:'论坛'
});
treepanel.setRootNode(rootnode);
treepanel.render('tree');
rootnode.expand();
});
[/code]
get_tree.jsp
[code="java"]
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
String node =request .getParameter("node");
System.out.println("get"+node);
String json="";
if("0".equals(node))
{
json+="[{id:1,text:'节点1','leaf':false},{id:2,text:'节点2','leaf':false}];";
System.out.println(json);
}
else if("1".equals(node))
{
json+="[{id:11,text:'节点11',leaf:false},{id:2,text:'节点12',leaf:true}]";
System.out.println("1");
}
else if("2".equals(node))
{
json+="[{id:21,text:'节点21',leaf:true},{id:22,text:'节点22',leaf:true}]";
System.out.println("2");
}
else if("3".equals(node))
{
json+="[{id:111,text:'节点111',leaf:true},{id:112,text:'节点112',leaf:true}]";
System.out.println("3");
}
response.getWriter().print(json);
[/code]
我帮你弄好了
[color=red]EXT代码[/color]Ext.BLANK_IMAGE_URL = '../scripts/ext/resources/images/s.gif';
Ext.onReady(function(){
var Tree = Ext.tree;
var loader=new Tree.TreeLoader({
dataUrl:'getTree.jsp',
listeners:{
"beforeload":function(treeLoader,node) {
treeLoader.baseParams.id=(node.id!="root"?node.id:"");
}
}
});
var tree = new Tree.TreePanel({
el:'tree-div',
useArrows:true,
autoScroll:true,
animate:true,
enableDD:true,
containerScroll:true,
loader:loader
});
var root = new Tree.AsyncTreeNode({
text:'dddd',
draggable:false,
id:'root'
});
tree.setRootNode(root);
tree.render();
root.expand();
});
[color=red]jsp代码[/color]<%@ page language="java" pageEncoding="utf-8"%>
<%
String node = request.getParameter("node");
System.out.println("get:" + node);
String json = "";
if ("root".equals(node)) {
json += "[{id:1,text:'节点1','leaf':false},{id:2,text:'节点2','leaf':false}]";
System.out.println("0");
} else if ("1".equals(node)) {
json += "[{id:11,text:'节点11',leaf:false},{id:2,text:'节点12',leaf:true}]";
System.out.println("1");
} else if ("2".equals(node)) {
json += "[{id:21,text:'节点21',leaf:true},{id:22,text:'节点22',leaf:true}]";
System.out.println("2");
} else if ("3".equals(node)) {
json += "[{id:111,text:'节点111',leaf:true},{id:112,text:'节点112',leaf:true}]";
System.out.println("3");
}
System.out.println(json);
out.println(json);
%>
get_tree.jsp 里面不要HTML代码,只要判断,然后输出就可以了,用HTML之后输出流就被占用了