1

我真的被困在一个 jstree 问题上;我有两棵树,一棵“源”树和一棵“目的地”树。“源”树是一棵包含节点的扁平树,我希望将这些节点拖到“目标”树上来构建它。但是,在拖动之后,我需要保留这些节点,以便我可以重用它们。现在,如果我在拖动之前和拖动期间按下控制键,它将执行复制功能并离开源节点。但是,我不想让用户这样做;我希望树总是复制。这就是我使用此设置的原因,但它不适用于我的树。任何人都可以帮忙吗?这是导致此问题的代码,减去数据。谢谢!!

<script type="text/javascript">
    $(function () {
        $("#SourceTree").jstree({
            "json_data": {
                "ajax": {
                    "url": "Home/GetTree",
                    "type": "POST",
                    "contentType": "application/json; charset=utf-8",
                    "dataType": "json",
                    "data": function (n) {
                        var result = "{'id':'" + (n.attr ? n.attr("id").replace("node_", "") : "0") + "'}";                            
                        return (result);
                    }
                }
            },
            "crrm": {
                "move": {
                    "always_copy": "multitree",
                    // Do not allow a node move within this tree
                    "check_move": function () {
                        return false;
                    },
                }
            },
            "plugins": ["themes", "json_data", "ui", "types", "crrm", "dnd"]
        })

        $("#DestinationTree").jstree({
            "json_data": {
                "ajax": {
                    "url": "Home/GetTree",
                    "type": "POST",
                    "contentType": "application/json; charset=utf-8",
                    "dataType": "json",
                    "data": function (n) {
                        var result = "{'id':'" + (n.attr ? n.attr("id").replace("node_", "") : "0") + "'}";
                        return (result);
                    }
                }
            },
            "plugins": ["themes", "json_data", "ui", "types", "dnd", "crrm"]
        })
    });

</script>
4

1 回答 1

0

好的,我通过大量试验和错误弄清楚了:源树必须具有:1)“dnd”和“crrm”插件,如示例所做的那样 2)move.check_move 函数必须存在以及上面 3)我们不需要 move.always_copy,删除这个,这里不需要。

目标树必须有: 1) "dnd" & "crrm" 插件,如示例 2) 需要在此处添加 crrm.move.always_copy:true。“crrm”:{“移动”:{“always_copy”:真}},

于 2013-02-07T01:11:07.327 回答