expandAll和selectNode冲突吗?
ztree吧
全部回复
仅看楼主
level 7
Terry239 楼主
function selectNode(id) {
var treeNode = zTree.getNodeByParam("id", id, null);
zTree.expandAll(false);
zTree.selectNode(treeNode);
}
如果是同一根下的treeNode,第二次调用时根下的节点都不显示了,而且根前面的加号变成减号了。。
2012年05月02日 05点05分 1
level 11
貌似你是今天给我发 email 的那位朋友嘛?? 这两个本身不冲突,但展开时默认使用了动画效果,是异步过程,因此 expandAll 后立刻执行selectNode 会被后执行的 expandAll 方法掩盖,从而导致你的错误。
解决方案:
1、关闭 动画效果
2、如果不关闭动画效果,可以利用 setTimeout 延迟后,执行 selectNode 方法
2012年05月02日 10点05分 2
level 7
Terry239 楼主
额,我没发过email给你。。
我选择第二种效果才试一下,谢谢!
2012年05月02日 10点05分 3
level 11
哦,那看来是都遇到了类似的问题了。
2012年05月03日 01点05分 4
level 7
Terry239 楼主
借用您的话,条条大路通罗马,我结合expandAll、expandNode和selectNode完美达到效果了。
2012年05月03日 06点05分 5
level 7
Terry239 楼主
只能怪selectNode太好用了,呵呵。
2012年05月03日 06点05分 6
level 11
[顶]
2012年05月03日 09点05分 7
1