Как загрузить дочерний узел в jsTree - PullRequest
1 голос
/ 29 октября 2010

Извините за мой плохой английский, моя система хочет изменить дерево JavaScript с KoolTreeView на jsTree, и я прочитал документ и внедрил его.В результате получается что-то вроде этого

Food

* Fish
* Beef
* Chicken

мой код JavaScript и div

<script class="source" type="text/javascript">
 $(function () {
  $("foodtree").jstree({
   "core" : { "initially_open" : [ "root" ] },
   "html_data" : {
     "ajax" : {
       "url" : "menu/menu/listfoodtree"
      }
   },
   "plugins" : [ "themes", "html_data" ]
  });
 });
</script>';

<div id="foodtree"></div>

Об URL «menu / menu / listfoodtree» создан простой HTML:

<li id="root"><span>Food</span>

<ul>
<li id="food14"><a href="menu/menu/listfish/1">Fish</a></li>
<li id="food13"><a href="menu/menu/listbeef/1/13">Beef</a></li>
<li id="food1"><a href="menu/menu/listchick/11">Chicken</a></li>
</ul>

</li>

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

# Food

    * Fish (href='/menu/menu/listfish/1')
      * Tuna
      * Salmon 
    * Beef
    * Chicken

, и теперь у меня есть URL-адрес «/ menu /menu / listfish / 1 ”создал обычный html:

<li id ='fish44'><span>Tuna</span></li>
<li id ='fish66'><span>Salmon</span></li>

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

1 Ответ

4 голосов
/ 16 ноября 2010

Вы указываете URL-адрес ajax в заголовке дерева, который передает nodeid в качестве параметра. Используя этот nodeid, вы должны передать свой новый json для этого узла, и дерево добавит его в качестве дочернего для выбранного узла.

Родительские узлы должны иметь свое состояние, определенное в json как «состояние»: «открыто», иначе дерево не будет вызывать сервер.

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

...