jsTree中如何加载子节点

发布于 2024-09-29 16:41:22 字数 1413 浏览 6 评论 0原文

抱歉我的英语不好,我的系统想要将 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>

About url of “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 中的子节点。您能给我任何建议或指导吗?

Sorry for my poor English, my system want to change javascript tree from KoolTreeView to jsTree and I read the document and implement it. The result is something like this

Food

* Fish
* Beef
* Chicken

my javascript and div code

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

About url of “menu/menu/listfoodtree” created plain 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>

the result displayed correctly (with jsTree) and my ideal want to click the item to load child node like this

# Food

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

and now I have the url “/menu/menu/listfish/1” created plain html:

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

but I don't know how to implement it, to click the Fish and display the child node from url. Could you give me any suggestion or guidance?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一念一轮回 2024-10-06 16:41:23

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

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

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

You specify the ajax url in the tree heading which passes the nodeid as a parameter. Using that nodeid you should pass back your new json for that node and the tree will add it as children to the selected node.

The parent nodes have to have their state defined in the json as "state":"open" or the tree won't make a call to the server.

You can't specify a different url for each node, but what you could do is specify a main url for the tree and redirect the server page to the url you would like to get the data from.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文