2015-12-20 4 views
3

Я работаю над сценарием, в котором у меня проблема, когда перетаскиваются элементы списка. Когда я перетаскиваю элемент в область с возможностью удаления, тогда событие срабатывает дважды. вот мой code.SEE КОД ЗДЕСЬсобытия перетаскивания дважды срабатывают

$('.draglist div').draggable({   
    cursor: 'move', 
    helper: 'clone', 
    connectToSortable: '.droplist' 
}); 
$(".droplist").droppable({ 
drop: function (event, ui) { 
    var dragtext = $(ui.draggable).text(); 
    alert(dragtext); 
} 
}); 
$('.droplist').sortable({ 
    opacity: 0.6, 
    revert: true, 
    cursor: 'move', 
    placeholder: "highlight", 
}); 

See DEMO

+5

См http://stackoverflow.com/questions/2678598/jquery-draggable-get-its-content-js-fired-twice –

ответ

2

Это ошибка JQuery UI. Простой подход - использовать использование sortable receive event, а не событие droppable drop. При этом событие запускается только один раз.

Updated Example

$(".droplist").droppable().sortable({ 
    opacity: 0.6, 
    revert: true, 
    cursor: 'move', 
    placeholder: "highlight", 
    receive: function(event, ui) { 
    var dragtext = $(ui.item[0]).text(); 
    alert(dragtext); 
    } 
}); 
+0

это решение работает, но проблема в том, что я должен добавьте кучу div-кода в droplist, используя этот код, добавляя divs в draglist вместо droplist, я копирую этот код в wordpress и добавляя div html в draglist вместо droplist. – btechguy

+0

Я решил это, расширив ответ. – btechguy

Смежные вопросы