jsTree флажок ajax-запрос, проверено

Есть ли способ обновить выбранный флажок с помощью запроса ajax в jsTree?

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

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

Спасибо за ваши ответы :)


person ignas    schedule 07.09.2010    source источник


Ответы (1)


Чтобы установить флажок при загрузке из источника данных с JSON_DATA, с ajax или без него, просто добавьте "class": "jstree-checked" к объекту "attr" для этого узла. Это будет добавлено к элементу ‹li› при загрузке данных и приведет к установке флажка.

Чтобы зафиксировать событие при установке/снятии флажка, просто привяжите его к событию "check_node" или "uncheck_node", например

$("#mytree").jstree(...).bind('check_node.jstree', function(e, data) {
    alert('box checked');
}

Если вы используете версию 1.0rc2, которая находится на веб-сайте jstree, я бы загрузил более новую версию разработки со страницы проекта: http://code.google.com/p/jstree/source/list

Я много возился с jstree в последние несколько дней (пытаясь выяснить многие из этих проблем), и событие «check_node» определенно не работает в 1.0rc2.

Также, казалось, были некоторые странные проблемы с классом «jstree-checked» в сочетании с плагином «cookies», что еще больше осложнялось различным поведением в зависимости от того, был ли плагин cookie добавлен до или после плагина флажка. Однако в самой последней версии разработки все работает нормально.

person Jamie Treworgy    schedule 20.10.2010
comment
Спасибо, за это время я много узнал о jstree. Спасибо за ответ ;) - person ignas; 21.10.2010