0

ソースとターゲットの場所を使用して、dndソリューションを作成しました。現在、ドラッグは双方向です。ソースへの1方向のターゲットにしたいです。次に、ソースから各アイテムに画像を追加し(削除アイコン)、ユーザーがアイコンをクリックしてレコードを正しいターゲットに送り返すことができるようにします。

パート1、dndを一方向にする方法、パート2、各アイテムに画像を追加する方法を理解しようとしています。

ありがとう

4

2 に答える 2

0

dndモジュールでこれを処理するイベントがあります。

'part1'については、このhttp://dojotoolkit.org/reference-guide/1.8/dojo/dnd.html#id6is'Source : falseを参照し、ターゲットのみである必要があるターゲットに設定 してください。

「part2」を使用してhttp://dojotoolkit.org/reference-guide/1.8/dojo/dnd.html#id8にアクセスし、「onDrop」について読んでください。'target-only'ソースでその関数をオーバーロードすると、ドロップされているノードにアクセスできるようになります。

 onDrop: function(source, nodes, copy) {
    dojo.forEach(nodes, function(node) {
       node.innerHTML += "<button title=Delete> X </button>";
    });
 }
于 2012-08-23T12:25:57.143 に答える
0

これが私が働いたものです。

dojo.connect(selectedInstructions, "onDndDrop", instructions.addDeleteButton);

addDeleteButton: function (source, nodes, copy, target) {
    if (source != target) {
        dojo.forEach(nodes, function(node) {
            var instructionId = node.getAttribute("id");
            var oImg = document.createElement("img");
            oImg.setAttribute('src', 'images/delete.png');
            oImg.setAttribute('alt', 'Remove');
            oImg.setAttribute('class', 'remove_instruction');
            oImg.setAttribute('onClick', "javascript:instructions.removeInstruction('" + instructionId + "')");
            document.getElementById(instructionId).appendChild(oImg); 
        });
    }
},

onその後、減価償却が行われているので、仕事に取り掛かろうとしましたがconnect、運が悪かったようです。私はこのコードを出すために今時間に追われているので、後日それに戻る必要があります。

on(selectedInstructions, "onDrop", instructions.addDeleteButton);
aspect.after(selectedInstructions, "onDrop", instructions.addDeleteButton);

Dojoのドキュメントが良かったらいいのにと思います。コミュニティに感謝しますが、それはサポートです。

于 2012-08-26T21:37:05.407 に答える