jstree dnd访问创建的元素

时间:2015-07-06 12:22:08

标签: jstree jstree-dnd

jstree 3.1.1版,插件dnd。

我需要在一个jstree元素中拖动节点并将它们放到另一个jstree元素中。这工作正常,我得到有关被拖动的元素的所有信息,但我没有获得有关第二个jstree元素中删除(新)创建的节点的任何信息。

dnd_stop.vakata似乎不包含这些信息(至少我找不到它),当dnd创建一个新节点时,不会触发create_node.jstree,所以我想知道如何获取新节点的id

请检查一下:http://jsfiddle.net/amug08ms/

all needed code is in the example ...

将节点从上部jstree拖动到下部jstree时,除节点文本外,有关该节点的所有信息都将丢失。那么如何将我需要的信息添加到较低的jstree节点中的已删除(已创建)节点?

提前感谢任何提示!

1 个答案:

答案 0 :(得分:0)

使用多树drag'n'drop时触发的事件是copy_node.jstree

以下是传输ID的方法(使用此示例,您可以轻松复制您可能需要的任何其他属性 - 默认ID和数据不会被复制):

$('#destTree').on('copy_node.jstree', function (e, data) {
    data.instance.set_id(data.node, data.original.id);
    for(var i = 0, j = data.node.children_id; i < j; i++) {
        data.instance.set_id(data.node.children_d[i], data.original.children_d[i]);
    }
});

这是更新的小提琴:
http://jsfiddle.net/amug08ms/1/