zTree树插件的异步加载刷新节点选中有关问题
zTree树插件的异步加载刷新节点选中问题。
zTree.reAsyncChildNodes(null, "refresh");
zTree.selectNode(selTreeNode);
异步加载完成之后,在一个节点下添加一个子节点,调用上面的方法,树是刷新了, 但是怎么没法选中selTreeNode节点,已经确认selTreeNode是有值的。
------解决思路----------------------
异步加载数据没有返回就已经执行完你的zTree.selectNode(selTreeNode);代码了,放到onAsyncSuccess事件中执行
------解决思路----------------------
selTreeNode是什么内容?如果是节点重新加载会被释放掉。你可以保存节点的唯一id,然后通过getNodesByParam获取节点成功新选定
zTreeObj为树的实例对象
var settting = {
callback: {
onAsyncSuccess: function () {
zTreeObj.selectNode(zTreeObj.getNodesByParam('id', 存储的唯一id值)[0]);
}
}
}
zTree.reAsyncChildNodes(null, "refresh");
zTree.selectNode(selTreeNode);
异步加载完成之后,在一个节点下添加一个子节点,调用上面的方法,树是刷新了, 但是怎么没法选中selTreeNode节点,已经确认selTreeNode是有值的。
------解决思路----------------------
异步加载数据没有返回就已经执行完你的zTree.selectNode(selTreeNode);代码了,放到onAsyncSuccess事件中执行
var settting={
callback:{onAsyncSuccess:function(){
zTree.selectNode(selTreeNode);
}}
}
------解决思路----------------------
selTreeNode是什么内容?如果是节点重新加载会被释放掉。你可以保存节点的唯一id,然后通过getNodesByParam获取节点成功新选定
zTreeObj为树的实例对象
var settting = {
callback: {
onAsyncSuccess: function () {
zTreeObj.selectNode(zTreeObj.getNodesByParam('id', 存储的唯一id值)[0]);
}
}
}