数据库字段:id parentID name
可以帮我用extjs struts2 json tree 写一颗树出来吗
要求具体点:这是我写的extjs
var root = new Ext.tree.AsyncTreeNode({
id:'-1',
text:"XXX公司",
loader:new Ext.tree.TreeLoader({
url:"getAar.action",
listeners:{
"beforeload":function(treeloader,node)
{
treeloader.baseParams={
id:node.id,
method:'POST'
};
}
}
})
});
var tree =new Ext.tree.TreePanel({
title:"动态Tree",
width:350,
height:300,
root:root,
autoScroll:true,//显示滚动条
animate : true,//true表示使用动画展开/折叠
listeners:{
'click':function(node){
alert(node.id);//得到的节点
}
}
});
tree.getRootNode().expand(true);
我到action:
aarList=areaService.getAar();
return Action.SUCCESS;
另外我拿到的aarList以这样的数据库结构怎么变成List 才能得到我想要的接送格式啊
求求各位大哥们帮小弟想想啊 我快疯了
/**
* 得到地区树下拉框(异步加载)
* @throws IOException
*/
public void getAreeTree() throws IOException {
Hashtable areahash = new Hashtable();
Area area = new Area();
Area parentArea = new Area();
List areaList = null;
ArrayList treeNodeArray = new ArrayList();
String parentid = this.getRequest().getParameter("parentid"); //地区父地区
if (parentid!=null && !"".equals(parentid)) { //如果父地区不为空
parentArea.setAreaId(parentid);
area.setParentArea(parentArea);
areaList = areaManager.getSubAreaList(parentArea);
}else { //如果父地区为空
area.setParentArea(parentArea);
areaList = areaManager.getAreaList(area);
}
// for (int i = 0; areaList != null && i < areaList.size(); i++) {
// area = (Area)areaList.get(i);
// areahash.put(area.getAreaId(), area.getAreaName());
// }
for (int i = 0; areaList != null && i < areaList.size(); i++) {
area = (Area)areaList.get(i);
JSONTreeNode TreeNode = new JSONTreeNode();
TreeNode.setArr("?parentid="+area.getParentArea().getAreaId());
TreeNode.setId(area.getAreaId());
TreeNode.setText(area.getAreaName());
// if(areahash.containsKey(area.getAreaId())){
// TreeNode.setChecked(true);
// }else{
// TreeNode.setChecked(false);
// }
List sublist = null;
sublist =areaManager.getSubAreaList(area);
if (sublist.size() > 0) { //如果该地区有子地区,则该地区不为子节点
TreeNode.setLeaf(false);
TreeNode.setIconCls("icon-treeg");
TreeNode.setSingleClickExpand(true);
} else {
TreeNode.setLeaf(true);
TreeNode.setIconCls("icon-treep");
}
//TreeNode.setExpandable(false);
treeNodeArray.add(TreeNode);
}
outJson(treeNodeArray);
}
我blog里有。自己看吧。