日期:2014-05-16  浏览次数:20426 次

求教treegrid异步加载数据不能实现
我在网上看的写的treegrid异步加载数据的例子,可是放在我这里却不能运行,希望大家帮我看一下,谢谢了哟!!!
js:文件


Ext.onReady(function() {
Ext.QuickTips.init();

//setWindowSize();//
var treeloader = new Ext.ux.tree.TreeGridLoader({ 
  url : webroot + "/jcxi/jcxi.do?method=yibuTree&cid=0"
}); 

//定义treegrid 
var treeGrid = new Ext.ux.tree.TreeGrid({ 
title : '', 
id : "gridPanel", 
width: 1000,
height: 600,
//autoScroll : true, 
//autoHeight : true, 
//border : false, 
animate : true, 
enableDD : true, 
rootVisible : false, 
containerScroll : true, 
columns:[{
  header: '统计名',
  width : 300,
  align : 'left',
  dataIndex: 'tjName'
},{
  header: '统计值',
  width : 200,
  dataIndex: 'tjValue',
  align :},
{
  header: '',
  //hidden : true,
width : 300,
  sortable : true,
  dataIndex: 'treeId'
 }
], 
loader : treeloader 
//绑定加载器 
}); 

// 异步加载根节点 
var rootnode = new Ext.tree.AsyncTreeNode({ 
id : '0', 
text : '中华人民共和国行政区划代码', 
draggable : false,// 根节点不容许拖动 
expanded : true 
}); 
//设置节点属性 
rootnode.attributes = { 
treeId : '0',
  tjName : '0',
  tjValue : '0'
}; 


// 为tree设置根节点 
treeGrid.setRootNode(rootnode); 

// 响应加载前事件,传递node参数 
treeGrid.on('beforeload', function(node) { 
var treeId = node.attributes["treeId"]; 
treeGrid.loader.dataUrl = webroot + "/jcxi/jcxi.do?method=yibuTree&cid="+treeId;}, treeloader); 

treeGrid.render('d2');

treeGrid.expand(false,false);

});


这是后参的action例子,初始化时是加进了根结点了的,可是点击了根结点以后却不会加载后面的子结点了,这是怎么回事呢
public ActionForward yibuTree(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String param=request.getParameter("cid");
JcxiTree jcxi0=new JcxiTree();
jcxi0.setTreeId("0");
//jcxi1.setSuperid("");
jcxi0.setTjName("j0");
jcxi0.setTjValue("0");
JcxiTree jcxi1=new JcxiTree();
jcxi1.setTreeId("-1");
//jcxi1.setSuperid("");
jcxi1.setTjName("j1");
jcxi1.setTjValue("1");
JcxiTree jcxi2=new JcxiTree();
jcxi2.setTreeId("1");
// jcxi2.setSuperid("-1");
jcxi2.setTjName("j2");
jcxi2.setTjValue("2");
JcxiTree jcxi3=new JcxiTree();
jcxi3.setTreeId("2");
//jcxi3.setSuperid("-1");
jcxi3.setTjName("j3");
jcxi3.setTjValue("3");
JcxiTree jcxi4=new JcxiTree();
jcxi4.setTreeId("4");
//jcxi4.setSuperid("1");
jcxi4.setTjName("j4");
jcxi4.setTjValue("4");
JcxiTree jcxi5=new JcxiTree();
jcxi5.setTreeId("5");
//jcxi5.setSuperid("2");
jcxi5.setTjName("j5");
jcxi5.setTjValue("5");
if(param.equals("0"))
{
List list=new ArrayList();
jcxi1.setLeaf(false);
//jcxi1.setExpanded(false);
list.add(jcxi1);
this.out(JSONArray.fromObject(list), response);
}
if(param.equals("-1"))
{
List list=new ArrayList();
jcxi2.setLeaf(false);
//jcxi2.setExpanded(false);