JSTree添加新的父节点或子子节点

时间:2018-01-09 14:31:42

标签: javascript jquery jstree

我们正在尝试使用以下详细信息添加新节点:

以下是我的jstree的创建方式:

$('#m_tree_3').jstree({
                      'plugins': ["wholerow", "checkbox", "types"],
                      'core': {
                              "themes" : {
                                      "responsive": true
                              },       
                              'data': $('#m_tree_3').data('treedata'). //--------------->>>>this is a tag where i have my data, i am taking data from here
                      },
                      "types" : {
                              "default" : {
                                      "icon" : "fa fa-folder m--font-warning"
                              },
                              "file" : {
                                      "icon" : "fa fa-file   m--font-warning"
                              }
                      },
              });


$('#m_tree_3').jstree().create_node([null, "New Node", "first", function(){ 
            alert("Dene");
        }, true]);

以下是我在HTML中的外观:

<div id="m_tree_3" class="" data-treedata="{{ json_encode($categories) }}"></div>
<div class="output_value"></div>

我正在尝试但是节点没有被创建。

1 个答案:

答案 0 :(得分:0)

这里要注意两个重要的事情,

其中一个是jsTree documentation中的[]字符有点误导。他们没有描述数组文字,只是所有输入都是可选

此外,重要的是不要忘记jsTree check_callback settigns中的core参数。

所以固定代码是:

$('#m_tree_3').jstree({
     'plugins': ["wholerow", "checkbox", "types"],
     'core': {
          "check_callback": true
          "themes" : {
              "responsive": true
           },       
           'data': $('#m_tree_3').data('treedata').
     },
     "types" : {
           "default" : {
               "icon" : "fa fa-folder m--font-warning"
           },
           "file" : {
              "icon" : "fa fa-file   m--font-warning"
           }
     },  
});

并附加其他父节点:

$("#m_tree_3").jstree('create_node', null , {"text":"GO somewhere","slug":"hhhhhhhhh","id":2387}, 'last', function() { 
     alert("added"); 
});