Я не думаю, что есть встроенный способ вызвать это (предполагая, что триггер ('receive') будет трудным для работы), но вот способ, которым я бы пошел с этим:
Добавьте вызов функции addToList в перетаскиваемые элементы списка, затем создайте эту функцию.Настройте внутренние теги html / span по своему усмотрению.
function addToList(text,id){
var $list=$("ol#drop_zone");
item_html += "<span>"+text+"</span>";
var $listItem = $("<li/>",{
id : id,
html : item_html
});
$list.append($listItem);
//bind a removeItem function to the new list item
$listItem.find('span').bind('click',removeItem);
//make a call to receive_item function that does the same as receive event
receive_item(id);
}
создайте функцию элемента приема, которая используется в вашем событии отбрасывания и в вашем событии addToList:
function receiveItem(id){
$.ajax({
type: 'post',
data: $('ol#drop_zone').sortable('serialize'),
dataType: 'script',
complete: function(request){
alert('received!');
},
url: 'my_url'})
}
tryэто для очистки дубликата кода - отредактируйте вашу функцию приема, используя вышеуказанную функцию:
$('ol#drop_zone').sortable({
receive: function(ev, ui){
id=ui.item.attr('id');
receiveItem(id);
}
})