Dynatree: запретить выбор родительских узлов по умолчанию, используя режим выбора 3 (иерархический) - PullRequest
1 голос
/ 22 февраля 2012

Я использую Dynatree с режимом выбора «3», который включает режим иерархического выбора.

Когда мое дерево рендерится, все узлы, у которых есть дочерние элементы, отображаются как выбранные по умолчанию.Листовые узлы по умолчанию не выбраны.Если я начну выбирать узлы вручную, дерево будет работать так, как ожидалось.

Как я могу принудительно отключить все узлы по умолчанию?

Примечания:

  • Dynatree 1.2.1 RC3
  • Дерево начинается пустым и программно строится с использованием "addChild ()"
  • Не имеет значения, если я явно добавлю "selected: false" при сборкемои узлы.
  • Не пробовали предварительно построить всю структуру.

Мысли?

Ответы [ 2 ]

0 голосов
/ 28 августа 2014

Вы можете попробовать это

    $("#tree").dynatree("getRoot").visit(function(node) {
        node.expand(false);
    });

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

0 голосов
/ 27 февраля 2012

Оказывается, выбор произошел в результате построения моего дерева с помощью кода. Когда я вызываю .addChild () , чтобы создать узел корневого уровня, узел не выбирается. Когда я вызываю .addChild () и добавляю к нему дочерний элемент, он становится выбранным.

Чтобы исправить это, я вручную вызываю .select (false) на родительском элементе после добавления дочернего элемента.

Я не уверен, что это ошибка в Dynatree или я делаю что-то не так.

...