【问题标题】:jstree dnd access created elementjstree dnd 访问创建的元素
【发布时间】:2015-07-06 12:22:07
【问题描述】:

jstree 版本 3.1.1,插件 dnd。

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

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

请查看这个:http://jsfiddle.net/amug08ms/

all needed code is in the example ...

当你将一个节点从上层 jstree 拖到下层 jstree 时,关于该节点的所有信息都会丢失,除了节点的文本。那么如何将我需要的信息添加到下 jstree 节点中的已删除(创建)节点?

提前感谢您的任何提示!

【问题讨论】:

    标签: jstree jstree-dnd


    【解决方案1】:

    使用多树拖放时触发的事件是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/

    【讨论】:

    • 非常感谢!为了您的答案和您的图书馆!
    猜你喜欢
    • 2010-09-12
    • 2011-03-23
    • 2021-05-18
    • 2020-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-08
    • 1970-01-01
    相关资源
    最近更新 更多