0

私のスクリプトでは、jquery のドラッグ可能 & ドロップ可能を試しています。ここを参照してください。ドロップ可能なdivにドロップされた各ドラッグ可能な要素から(最終的にデータベースに入れるために)データを取得しようとしています。現在、最後にドロップされたdivからのみデータを取得できるようにしています。

    $('#sortcard, #dropbox, #dropbox1').droppable({
        accept: '.sorting',
        hoverClass: 'border',
        tolerance: 'touch',
        drop: function(e, ui) {
          $(this).append(ui.draggable.html() + '<br/>');
          $("#add_friend").show().fadeOut(12000);
          $(e.target).droppable("disable");
          $(e.target).append("<input type='button' name='Sub' value='clear'/>").click(function() {
            $(this).empty().droppable("enable");
             });

            var dropbox = $('#dropbox').html();
            var dropbox1 = $('#dropbox1').html();

            if(dropbox && dropbox1 !== '') {
                 $.post("account_main.php", {data: $(this).text()}, function(data) {
                    $('#demo').html(data);
                });     
             }
          }
      });

多分犯人だと思う

{data: $(this).text()}, function(data) {
    $('#demo').html(data);
});     

私はそれをいじりましたが、まだ私が望む結果を得ていません. これに関する私のコーディングは大ざっぱで、作り直しが必要かもしれませんが、効率的にするために正しい方向に私を押し進めるためのいくつかのアイデアが必要であり、ヒントも非常に感謝しています.

4

1 に答える 1

0

droppableを送信しているため、最後のデータのみを取得しています$(this).text()

そのコンテキストでは、ドロップされ$(this)た最後のものです。droppableそれ以上のものが必要なので、次のものを置き換えます。

{data: $(this).text()}

次のようなもので:

{
    sortcard: $('div#sortcard').text(),
    dropbox: $('div#dropbox').text(),
    dropbox1: $('div#dropbox1').text()
}

これらの3つのDIVからデータを送信します。

于 2012-11-04T09:39:13.693 に答える