2010-10-29 134 views
1

对不起,我的英文很差,我的系统希望将KoolTreeView的javascript树更改为jsTree,然后阅读文档并实现它。其结果是这样的如何在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> 

关于创建纯HTML“菜单/菜单/ listfoodtree”的网址:

<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)和我的理想想点击项目加载子节点像thi小号

# Food 

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

,现在我有URL“/菜单/菜单/ listfish/1”创建纯HTML:

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

,但我不知道如何实现它,点击鱼并从url中显示子节点。你能给我任何建议或指导吗?

回答

4

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

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

您无法为每个节点指定不同的url,但您可以执行的操作是指定树的主要URL并将服务器页面重定向到您希望从中获取数据的url。

+0

看起来像答案很有用。你能提供与问题和“答案”有关的示例代码吗? – StackOverFlow 2012-04-20 08:03:54