【问题标题】:jstree dnd prevent node deletionjstree dnd 防止节点删除
【发布时间】:2012-05-23 15:38:21
【问题描述】:

我已经通过拖放设置了一个 jstree。现在我可以将一个节点拖到一个预定义的 div 中。但是树中的节点被删除了。如何拖出一个节点并让该节点仍然保留在树中?

JsTree with dnd plugin, always copy 不适合我。我想这是因为我会掉到一个 div 而不是另一棵树上。

编辑:添加代码

$(function () {
$("#tree").jstree({ 
    "crrm" : {
        "move" : { 
            "check_move" : function (m) { //do not allow messing up the tree!
                    return false;
                },
            "always_copy" : "true"
        }
    },
    "json_data" : {
        "progressive_render" : true,
        "ajax" : { 
            "url" : "lookupInstruments.php", 
            "data": function(n) {
                // the result is fed to the AJAX request 'data' option
                return {"id": n.attr ? n.attr("id") : "root_null_null_-1"};
                }
        }
    },
    "dnd" : {
        "drop_finish" : function (data) { 
            //alert(data.o.attr("ptype"));
            drop(data.o); 
        },
        "drop_check" : function (data) {
            if(data.o.attr("dragable") == "0") {
                return false;
            } else {
                return true; 
            };
        },
    },
    "plugins" : [ "themes", "json_data", "crrm", "dnd" ]
});

});

编辑 2:已解决,希望这对其他人有帮助:

问题解决了,我不得不在 drop 函数中克隆 drop 对象。

function drop(dObj) {
var dropObj = dObj.clone();
    ...
}

【问题讨论】:

  • 我认为创建自己的答案比为您的问题添加解决方案更好......
  • 由于缺少积分,我在 10 小时内不允许这样做......我对这里很陌生......

标签: jstree drag-and-drop


【解决方案1】:

问题解决了。我不得不在 drop 函数中克隆 drop 对象。

function drop(dObj) {
var dropObj = dObj.clone();
    ...
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多