【发布时间】:2015-08-18 14:52:06
【问题描述】:
我有一个 extjs 的 Ext.tree.Panel。这棵树的主根是不可见的。这个根的子节点都是可访问的。当我单击这些可见根的子节点时,我必须找到所选节点的可见根节点。是否有任何标准方法来查找节点的可见根,或者逐级查找元素,这是该节点的父节点?我应该迭代所选项目的所有父节点并与定义的可见根列表进行比较吗?
【问题讨论】:
标签: javascript extjs
我有一个 extjs 的 Ext.tree.Panel。这棵树的主根是不可见的。这个根的子节点都是可访问的。当我单击这些可见根的子节点时,我必须找到所选节点的可见根节点。是否有任何标准方法来查找节点的可见根,或者逐级查找元素,这是该节点的父节点?我应该迭代所选项目的所有父节点并与定义的可见根列表进行比较吗?
【问题讨论】:
标签: javascript extjs
确实,NodeInterface 上没有 getVisibleRoot 方法。
你必须自己想出一个。
例如,添加到Ext.tree.Panel 的以下方法可以解决问题:
getVisibleRoot: function(node) {
var p,
isRootVisible = this.getStore().getRootVisible();
while ((p = node.parentNode) && (!p.isRoot() || isRootVisible)) {
node = p;
};
return node;
},
【讨论】: