使用jsp做服务器,做一个简单Ext异步树:
1、html代码
2、服务器/JQuery/ext/treeServer.jsp
1、html代码
<html>
<head>
<link rel="stylesheet" type="text/css" href="/JQuery/extjs/resources/css/ext-all.css" />
<script type="text/javascript" src="/JQuery/extjs/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="/JQuery/extjs/ext-all.js"></script>
<script>
function fn(){
Ext.BLANK_IMAGE_URL ="/JQuery/extjs/resources/images/default/tree/s.gif";
//服务器需要传回类似如下的数据 :treeData 本例中未使用
var treeData =[{text:'子节点一',leaf:true},{id:'child2',text:'子节点二',children:[{text:"111",leaf:true}]},{text:'子节点三',id:3}];
var urlstr="/JQuery/ext/treeServer.jsp";
var mytree=new Ext.tree.TreePanel({
el:"container",//应用到的html元素id
animate:true,//以动画形式伸展,收缩子节点
title:"Extjs静态树",
collapsible:true,
rootVisible:true,//是否显示根节点
autoScroll:true,
autoHeight:true,
width:150,
lines:true,//节点之间连接的横竖线
loader:new Ext.tree.TreeLoader({dataUrl:urlstr}),//
root:new Ext.tree.AsyncTreeNode({
id:"root",
text:"根节点",//节点名称
expanded:true,//展开
leaf:false//是否为叶子节点
//children:treeData
})
});
mytree.render();//不要忘记render()下,不然不显示哦
}Ext.onReady(fn);
</script>
</head>
<body>
<div id=container></div>
</body>
</html>
2、服务器/JQuery/ext/treeServer.jsp
<%
Map requestParams=request.getParameterMap();
System.out.println(requestParams);
String node = request.getParameter("node");
//输出
if (node.equals("root")) {
response.getWriter().write("[{id: 1,text: 'A leaf Node'}]");
}else{
response.getWriter().write("[{id: 1,text: 'A leaf Node',leaf: true}]");
}
%>