Пример Hello World можно найти здесь: http://jqueryui.com/demos/sortable/#connect-lists. Вам вообще не нужно draggable
, только sortable
.
$(function() {
$("#sortable1, #sortable2").sortable({
connectWith: '.connectedSortable'
}).disableSelection();
});
Если вы хотите запретить сортировку элементов в одном списке, это может быть способом. Хотя это не самый красивый пользовательский интерфейс (пользователю дается ложная надежда), и пользователь также может свободно определять позицию сброса в иностранном списке.
$(function() {
var sender;
var recvok = false;
$("#sortable1, #sortable2").sortable({
connectWith: '.connectedSortable',
start: function() {
sender = $(this);
recvok = false;
},
over: function() {
recvok = ($(this).not(sender).length != 0);
},
stop: function() {
if (!recvok)
$(this).sortable('cancel');
}
}).disableSelection();
});
Это действительно ужасная функция, работающая вокруг того, что я считаю незавершенностью в jQuery UI. Это сохраняет отправителя при старте и снимает флажок, позволяющий сбросить. Когда вводится другой получатель, он проверяет, не является ли он отправителем, и устанавливает флаг. На sortstop флаг проверен. Предупреждение: эта функция уродлива как для пользователя, так и для программиста, но работает.