1

私は本当に jstree の問題で立ち往生しています。「ソース」ツリーと「宛先」ツリーの 2 つのツリーがあります。「ソース」ツリーは、構築するために「宛先」ツリーにドラッグするノードを含むフラット ツリーです。しかし、ドラッグした後、それらのノードを再利用できるように残しておく必要があります。ここで、ドラッグの前とドラッグ中にコントロール キーを押すと、コピー機能が実行され、ソース ノードから離れます。しかし、私はユーザーにこれをさせたくありません。ツリーが常にコピーされるようにします。これが、この設定を使用した理由ですが、私のツリーでは機能しません。誰でも助けることができますか?この問題の原因となるデータを除いたコードを次に示します。ありがとう!!

<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

OK、私は試行錯誤を重ねてそれを理解しました: ソースツリーには以下が必要です: 1) 例のように "dnd" & "crrm" プラグイン 2) 上記と同様に move.check_move 関数が存在する必要があります 3) move.always_copy は必要ありません。これを削除します。ここでは必要ありません。

宛先ツリーには以下が必要です: 1) 例のように "dnd" & "crrm" プラグイン 2) ここに crrm.move.always_copy:true を追加する必要があります。"crrm": { "move": { "always_copy": true } },

于 2013-02-07T01:11:07.327 に答える