Jquery Sortable Update Event может вызываться только один раз?
Я пытаюсь внести изменения в категории с помощью Jquery & Php. У меня нет проблем с этим. Моя проблема в том, что когда вызывается событие обновления, оно возвращает 2 результата. 1 результат для Перетащенного Родителя, один результат для Отброшенного Родителя. Я хочу позвонить только упал идентификатор родителя. Вот мой сценарий:
$("#gallery ul").sortable({
connectWith: '.dropBox',
opacity: 0.35,
scroll: true,
scrollSensitivity: 100,
//handle: '.move',
helper: 'clone',
containment:'#gallery',
accept:'#gallery > .photo',
revert: true,
update: function(event, ui){
params = 'c=' + $(this).attr('id') + '&id=' + ui.item.attr('id');
$.ajax({
type: 'POST',
url: 'processData.php',
data: params,
error:function(){
alert("Error!");
},
success:function(data){
$("#serverResponse").html(data);
}
});
}
}).disableSelection();
Можете ли вы помочь мне, ребята?
4 ответа
Решение
Использование update
, stop
а также receive
события, например
$(function() {
position_updated = false; //flag bit
$(".sortable").sortable({
connectWith: ".sortable",
update: function(event, ui) {
position_updated = !ui.sender; //if no sender, set sortWithin flag to true
},
stop: function(event, ui) {
if (position_updated) {
//code
position_updated = false;
}
},
receive: function(event, ui) {
// code
}
}).disableSelection();
});
ui.sender
существует только во втором обратном вызове.
$(".sortable").sortable({
connectWith: ".sortable",
update: function (evt, ui) {
// just ignore the second callback
if(ui.sender == null){
// call ajax here
}
},
receive: function (evt, ui) {
// called after the first 'update'
// and before the second 'update'
// ui.sender is always exists here
}
}).disableSelection();
Просто сделай это:
update: function(event, ui) {
if(ui.sender) {
// Your actual code
}
},
Вы должны попробовать поиграть с sortable
разные события
- Начните
- Сортировать
- менять
- beforeStop
- стоп
- Обновить
- Получать
- Удалить
- над
- из
- активировать
- дезактивировать
Я уверен, что один из них будет вашим ответом.
Источник: http://jqueryui.com/demos/sortable/