1

对不起,我的英语很差,我的系统想要将 javascript 树从 KoolTreeView 更改为 jsTree,我阅读了文档并实现了它。结果是这样的

食物

* 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>

关于“menu/menu/listfoodtree”的 url 创建了纯 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

现在我创建了纯 html 的 url “/menu/menu/listfish/1”:

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

但我不知道如何实现它,单击 Fish 并从 url 显示子节点。您能给我一些建议或指导吗?

4

1 回答 1

4

您在将 nodeid 作为参数传递的树标题中指定 ajax url。使用该nodeid,您应该为该节点传回您的新json,并且树会将其作为子节点添加到所选节点。

父节点必须在 json 中将其状态定义为“状态”:“打开”,否则树不会调用服务器。

您不能为每个节点指定不同的 url,但您可以做的是为树指定一个主 url,并将服务器页面重定向到您想要从中获取数据的 url。

于 2010-11-16T18:28:57.250 回答