日期:2014-05-18  浏览次数:20645 次

★★★EXT中TreePanel修改后异步刷新打开问题★★★在线等
先上代码:
reloadNavNode : function() { 
var tree=nodeSelected.getOwnerTree();
  tree.root.reload();
  tree.expandPath(nodeSelected.getPath());
}

火狐调试,报错如下:
this.getOwnerTree() is null

问题来了:
如果没有tree.root.reload()能打开;加了之后为什么nodeSelected.getPath())就找不着路径报错了??
其实就想异步更新节点之后,对整个树进行一次重新刷新加载,最后再打开选中到刚刚修改的节点,
这么一个通俗的需求我想一定有高手想出办法搞定的,还望能不吝赐教,不然晚饭都吃不香了,拜谢!

问题解决立马送分,在线苦苦苦苦苦苦苦苦等....................

------解决方案--------------------
因为我觉得这个是因为你tree.root.reload()重新加载的整棵树,没有记录你的之前打开的状态。这个还是你先要记录这个代开的状态才能在重新加载后在记录主这个nodeseleced的节点和路径。
------解决方案--------------------
JScript code
reloadNavNode : function() {  
  var tree=nodeSelected.getOwnerTree();
  var path = nodeSelected.getPath();
  tree.root.reload();
  tree.expandPath(path);
}