- 爱易网页
-
JavaSript
- 求教treegrid异步加载数据不能实现,该怎么解决
日期: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);