我在 angularjs 中使用 jsTree 并在“ready”中使用“select_node”。此方法返回 false。在调试代码时,观察到 tree.instance._model.data 没有那个节点,所以 this.get_node(obj); 返回假。(以下是代码片段)
select_node : function (obj, supress_event, prevent_open, e) {
var dom, t1, t2, th;
if($.isArray(obj)) {
obj = obj.slice();
for(t1 = 0, t2 = obj.length; t1 < t2; t1++) {
this.select_node(obj[t1], supress_event, prevent_open, e);
}
return true;
}
obj = this.get_node(obj); //here it returns false
if(!obj || obj.id === '#') {
return false;
}
}
我不确定为什么 tree.instance._model.data 当时没有数据,因为它通常在我刷新浏览器时起作用。
有什么帮助吗?下面是我的代码片段。
me.onTreeReady = function (eve, tree) {
tree.instance.deselect_all();
tree.instance.refresh(true, true);
var response = tree.instance.select_node(defaultNode);
}