Как скомпоновать с формой чекбоксы в JsTree?
Добрый день!
Задача: Необходимо дерево с чекбоксами, для использования в форме, соответственно, нужно знать выделенные чекбоксы. Подскажите, пожалуйста, почему не работает опция real_checkboxes? Нужно, чтобы к нодам автоматически добавлялись скрытые чекбоксы.
j(treeName).jstree({
"plugins": ["themes", "ui", "checkbox"],
"checkbox": {
"real_checkboxes": true
}
})
Двухуровневое дерево такого типа Код:
x родитель1
<ul>
<li id="..."><a href="#">имя</a>
<ul>
<li id="..."><a href="#">имя</a></li>
<li id="..."><a href="#">имя</a></li>
</ul>
</li>
<li id="..."><a href="#">имя</a>
<ul>
<li id="..."><a href="#">имя</a></li>
</ul>
</li>
<li id="..."><a href="#">имя</a>
<ul>
<li id="..."><a href="#">имя</a></li>
<li id="..."><a href="#">имя</a></li>
</ul>
</li>
</ul>
id - уникален для каждого li Дерево создается, но скрытых чекбоксов нет. И еще вопрос - как получить все отмеченные чекбоксы только конкретного уровня, например, второго? Я пытаюсь собирать без real_checkboxes выделенные ноды в массив (либо добавлять вручную скрытый input checkbox - то, что должно происходить при включенной опции real_checkboxes) по событию
.bind('select_node.jstree', function (e, data) {...}
но как исключить первый уровень? Плюс событие select_node возникает для каждого выделения два раза: - Если выделяется элемент первого уровня, то 1 раз на этот элемент, и второй - на все вложенные в него (независимо от их количества). - Если выделяется элемент второго уровня - 1 раз на него, 2 раз на его родителя в 1 уровне. Аналогично и для deselect. Есть функция для получения всех выделенных узлов: .get_checked ( context, get_all ) Как правильно указывать context для получения всех узлов или конкретного уровня? В оф. документации сказано: это может быть узел DOM, Jquery узел или селектор, указывающий на элемент в дереве. Т.е. для получения всех узлов нужно указать что-то вроде
j(treeName).jstree("get_checked",что здесь???,true);
? Есть еще функция "get_all_checked". Заранее спасибо за помощь и подсказки. UPD: И еще важный вопрос - какую версию лучше использовать? Уже путаюсь, в последней стабильной версии 1.0 в lib идет jquery 1.5, в предыдущих 1.9.1... Использую, например, v2.0.0-alpha - дерево строится, но очевидно, что документация на сайте устарела, а с предыдущими дерево вообще не строится (пробую и jquery из их вложений, и 1.9, и 1.10). Получается каша из версий и документации, прошу Вашей помощи :) |
| Часовой пояс GMT +3, время: 07:34. |