jstree根据提交的选定复选框创建新树

时间:2016-11-21 06:23:32

标签: javascript jquery jstree

我想根据复选框选择创建一个新的复选框树。 当我在选择后单击提交时,仅选中复选框并显示不确定的父树。

code in jsfiddle

https://jsfiddle.net/chakrihacker/d2xztqok/1/

1 个答案:

答案 0 :(得分:0)

您只需使用自己的数据创建#selected树,然后在select_node树上调用#selected,即可传递来自get_checked的{​​{1}}数据,如下所示:

#tree

请在此处查看我的完整工作示例:http://zikro.gr/dbg/html/jstree/

<强>更新

要仅通过所选数据创建新树,您必须遍历所有数据并保留所选节点。我用//button submit output $('#submit').click(function() { var selectedData = $("#tree").jstree("get_selected"); //document.getElementById('selected').innerHTML = selectedData; //console.log(selectedData); $("#selected").jstree({ "checkbox": { "keep_selected_style": false }, "plugins": ["checkbox", "json_data"], "core": { "themes": { "icons": false }, "data": myData }, }); $('#selected').on({ 'loaded.jstree': function treeLoaded(event, data) { data.instance.select_node($("#tree").jstree().get_checked()); }, 'ready.jstree': function() { $(this).jstree("open_all"); } }); }); 来获取id和2个数组的节点;一个用于存储树创建的新选定节点,另一个用于保留已添加的ID,以便不再添加它们。

get_node

请参阅此处的工作示例:http://zikro.gr/dbg/html/jstree/index-copy.html