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()
}

这将从这三个 DIV 发送数据。

于 2012-11-04T09:39:13.693 回答