Dynatree на событии показывает братьев и сестер или динамически изменяет данные - PullRequest
0 голосов
/ 06 февраля 2012

Можно ли динамически изменять данные, которые использует DynaTree?

У меня есть полный набор данных, относящихся к dynatree, но я хочу отобразить только определенную ветвь дерева, поэтому я перебираю данные и беру нужный узел и создаю дерево, это прекрасно работает,

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

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

Я пробовал:

tree.reload();
tree.renderInvisibleNodes() 
tree.redraw();

и установил элемент пустым и воссоздал дерево с новыми настройками

 $('#i2o-tree').empty();
 $('#i2o-tree').dynatree(new_settings);

1 Ответ

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

Только что это сработало, надеюсь, это поможет кому-то в будущем.

Поскольку dynatree - это плагин jQuery, если вам действительно нужно перезагрузить данные и заново обработать дерево, которое вы называете, и вызвать jQuery 'destroy'Метод:

 // destroy tree
 $("#i2o-tree").dynatree("destroy");

 // re-create tree with new settings/data
 setupTree(tree_data, false);
...