extjs treepanel: expand () и expandChildNodes () - PullRequest
5 голосов
/ 15 апреля 2011

Если я напишу:

rootNode.expand()

, я могу получить доступ только к дочерним узлам этого корневого узла, но не могу получить доступ к узлам внуков этого корневого узла.Я должен написать:

rootNode.expandChildNodes()

, чтобы получить его.

Есть ли другой способ получить внуки или дополнительные дочерние узлы, даже если дерево свернуто?кроме использования node.eachChild() функции?Я пытался:

rootChildNode.firstChild

, но это не работает.

Ответы [ 3 ]

2 голосов
/ 25 октября 2012

ExtJS 4x имеет метод expandAll() для компонента Tree Panel. Это расширит каждый узел рекурсивно.

0 голосов
/ 22 августа 2013

Еще один способ добраться до потомков - использовать node.expand(true), где узел - это корневой узел.Точно так же вы можете взять любой узел в дереве и развернуть все его потомки, используя этот же код.Обычно используется для выбранного узла.

0 голосов
/ 12 марта 2013

, если вы хотите расшириться до парциального уровня, тогда в этом случае:

           expandTo:function(level){

                    treePanel.collapseAll();
                    treePanel.getRootNode().cascadeBy(function (node) {

                          if (node.getDepth() < level) { node.expand(); }
                          if (node.getDepth() == level) { return false; }
                     });
         }
...