weixin_42317021
weixin_42317021
2009-06-23 10:38

EXT Tree 两颗树如何共享一个数据

  • ext
  • javascript

定义两个TREE,
tree1
tree2

tree1载入数据,当tree1载入数据后,tree2载入与tree1相同的数据(不进行服务器请求),如何做到,谢谢

[b]问题补充:[/b]
lovewhzlq 感谢您的回答,按您的方法进行了测试,其结果是

tree2 仅仅拥有了与 tree1相同的数据获取方式,tree1获取数据后,展开tree2会再次发送请求.我希望tree2能获得tree1已经载入的数据,类似store.loadData(data)方法

附 按您的方法进行的测试代码
var tree1 = new Ext.tree.TreePanel({
el:'tree',
loader: new Ext.tree.TreeLoader({dataUrl:'data.asp'}),
root:new Ext.tree.AsyncTreeNode({
text: 'root1',
id:'0'
})
});
tree1.render();
tree1.root.expand ();

 var loader = tree1.getLoader(); 
               //-------------------------------------------------------------

var tree2 = new Ext.tree.TreePanel({
el:'tree2',
loader:loader,
root:new Ext.tree.AsyncTreeNode({
text: 'root2',
id:'0'
})
});
tree2.render();
tree2.root.expand ();

/*data.asp 返回数据
[{
id:1,
text:'node0',
leaf : true
}]
*

[b]问题补充:[/b]
感谢 yourgame 的帮助

因为 tree1的node 会产生修改操作,其修改结果我想直接反应到tree2上面
“把数据取出来放到一个地方存储起来”,不太适用,

最好就是两个tree共享一个数据,如 grid的store在两个表中使用,修改其中任意一个表,两个表都会有反应出修改结果

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

4条回答