Как получить идентификатор сортируемого элемента?

Я использую Sortable, и он работает. Но я пытаюсь сохранить то, что находится внутри списков.

Допустим, у меня есть 3 списка:

<ul id="top" class="connectedSortable">
<li>elem1</li>
<li>elem2</li>
<li>elem2</li>
</ul>

<ul id="left" class="connectedSortable">
</ul>

<ul id="right" class="connectedSortable">
</ul>

jQuery:

$("#top, #left, #right")
.sortable({
    connectWith: ".connectedSortable",
    stop: function(event, ui)
    {
        alert(this.id); // printing top, left right...
    }
})
.disableSelection();

Я пытался использовать событие stop внутри сортируемого, но, конечно, он возвращает только идентификатор ul. Итак, я хочу, чтобы jQuery сообщил мне, когда я переместил elem1 из list1 в list2 (или, конечно, в любой elemX).

Я пытаюсь сделать домашнюю страницу, чтобы пользователь мог сам определить макет.


person Jason94    schedule 09.03.2011    source источник


Ответы (1)


Я думаю, вы хотите использовать обратный вызов receive:

http://jsfiddle.net/nzskv/1/

$("#top, #left, #right").sortable({
    connectWith: ".connectedSortable",
    receive: function(event, ui) {
        alert("[" + this.id + "] received [" + ui.item.html() + "] from [" + ui.sender.attr("id") + "]");
    }
}).disableSelection();
person Adam Ayres    schedule 09.03.2011