подскажите как работать с http://www[dot]jstree[dot]com/ необходимо нарисовать дерево. вида
главный раздел
1 раздел
1.2 раздел
2 раздел
выгребаю данные из таблицы вида
ид/ имя раздела / ид родителя
0 главный раздел
1 1 раздел 0
2 2 раздел 0
3 1.2 раздел 1
получаю данные из таблицы, создаю многомерный массив.
нужно его перегнать в json и отдать jstree. кто работал - подскажите как это сделать, желательно доступно
1. des1roer - 20 Мая, 2014 - 07:46:36 - перейти к сообщению
2. tato - 21 Мая, 2014 - 00:44:28 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
скопировать код в буфер обмена
- // буфер
- var categories = [];
- // получаем json из атрибута data
- var origCategories = $('treeContainer').data('categories');
- // готовим со вкусом (=
- for (var categoryId in origCategories) {
- // берем категорию
- var category = origCategories[categoryId];
- // заполняем данные
- category.text = category.name;
- category.icon = category.status;
- category.data = {
- id: category.id,
- originalId: category.id,
- name: category.name,
- status: category.status
- };
- // тут самое интересное
- // если наша категория самая "верхняя", например у нее
- // parent = 0, то мы должны поставить решетку
- if (category.parent == 0) category.parent = '#';
- categories.push(category);
- }
- $treeContainer.jstree({
- core: { check_callback: true, multiple: false, data: categories },
- plugins: ["dnd"]
- });
Нет необходимости самостоятельно выстраивать дерево на стороне php
jstree сделает это за нас. По-этому передаем одномерный массив.
CODE (html):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <div data-categories="<?php echo json_encode($categories); ?>"></div>