【问题标题】:jstree: create a new child nodejstree:创建一个新的子节点
【发布时间】:2016-02-06 14:41:39
【问题描述】:

在发布此之前,我已经检查了 stackoverflow 上的其他问题。一个是这样的:

creating a new node in jstree

但不知何故,我无法让它工作。

我正在通过 ajax 获取子节点详细信息。当您单击一个节点时,它将触发 ajax 请求并获取子节点详细信息。我想将这些详细信息附加到 jstree 中的父(单击)节点。

这里是 jsfiddle 演示(没有 ajax):https://jsfiddle.net/8wyqd9om/

你能帮我解决这个问题吗?

HTML:

<div id='cat_tree'>
<ul>
<li id="1">First
    <ul>

      <li id="2">First</li>
      <li id="3">First</li>
    </ul>
</li>
<li id="4">First</li>
<li id="5">First</li>    
<li id="6">First</li>
</ul>
</div>

js:

$(function () { 
    $('#cat_tree').jstree({"core": {
        "themes":{
        "icons":false
        }
    }}); 

    var data = [
        { "id" : "7", "parent" : "#4", "text" : "second" },
        { "id" : "8", "parent" : "#4", "text" : "second" },
    ];

    $('#click').click(function() {
        $('#cat_tree').jstree().create_node($('#4'), data, 'last', function(){
        alert("done");
        }, true);
    });
});

【问题讨论】:

    标签: javascript jquery jstree


    【解决方案1】:

    请检查以下代码

    $(function() {
    
      var data = [{
        "id": "p1",
        "parent": "#",
        "text": "Parent-1"
      }, {
        "id": "p2",
        "parent": "#",
        "text": "Parent-2"
      }, {
        "id": "c1",
        "parent": "p2",
        "text": "Child 1"
      }, {
        "id": "c2",
        "parent": "p2",
        "text": "Child 2"
      }, ];
    
    
      $("#jstree").jstree({
        "core": {
          "check_callback": true,
          "data": data
        }
      }).on('create_node.jstree', function(e, data) {
        console.log('saved');
      });
    
      $('#btnCreate').click(function() {
    
        $('#jstree').jstree().create_node('#', {
          "id": "p3",
          "text": "Parent-3"
        }, "last", function() {
          alert("Parent created");
        });
    
        $('#jstree').jstree().create_node('p2', {
          "id": "c3",
          "text": "Child 3"
        }, "last", function() {
          alert("Child created");
        });
    
      });
    
    });
    

    演示:https://jsfiddle.net/m24fvh39/1/

    【讨论】:

    • 感谢 Thangaraja!在 jsfiddle 上工作。我会将它集成到我的页面并接受答案。
    • 请点赞并设置为答案。对其他人有用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 2012-08-29
    • 1970-01-01
    • 2018-10-22
    相关资源
    最近更新 更多