2013-12-04 8 views
1

У меня есть 2 списка. Он расположен рядом друг с другом. Пользователь может сортировать каждый список отдельно, а затем я предоставил флажок. Если флажок установлен, элементы привязываются друг к другу по горизонтали, а затем и далее, если пользователь выбирает элемент из одного поля списка слева, затем выбирается соседний элемент из правого списка, а затем перемещается вместе для переупорядочения (сортировки). Не могли бы вы помочь мне в выборе обоих элементов и перемещении.Как перетаскивать различные элементы списка вместе

+0

Вы можете найти концепцию по [этой ссылке] (http://jqueryui.com/sortable /). Измените его в соответствии с вашими потребностями. – PythonEnthusiast

+0

Я не уверен, что получаю то, что вы пытаетесь сделать, вы имеете в виду как http://jqueryui.com/sortable/#connect-lists? –

+0

Благодарим за ответ. Я отредактировал вопрос, чтобы сделать его более понятным. Я хотел переместить элементы в списке, но вместе. – lima

ответ

0

Я, наконец, смог сделать это следующим образом.

Я использовал jquery-sortable для обоих списков.

в Activate отозваны, получил оригинальную ListItems

activate: function(event, ui){ 
    srcList = $('#source-container ul.sourceList li'); 
}, 

в остановке отзывной

stop: function(event, ui){ 
    $(srcList).each(function(idx, elem){ 
     if($(elem).equals($(ui.item))) 
    orgIndex = idx; 
}); 
$('#source-container ul.sourceList li').each(function(idx, elem){ 
    if($(elem).equals($(ui.item))) 
     curIndex = idx; 
}); 
$('#target-container ul.targetList li').each(function(idx, elem){ 
    if(idx == orgIndex){ 
    var toIndex = curIndex + 1; 
    var fromIndex = orgIndex + 1; 
    if(toIndex < fromIndex) 
     $('#target-container ul.targetList li:nth-child('+fromIndex+')').insertBefore($('#target-container ul.targetList li:nth-child('+toIndex+')')); 
    else 
    $('#target-container ul.targetList li:nth-child('+fromIndex+')').insertAfter($('#target-container ul.targetList li:nth-child('+toIndex+')')); 
}     
Смежные вопросы