在此示例中,http://jqueryui.com/sortable/#connect-lists可以在不同列表和同一列表之间拖放项目。
是否可以在同一列表中取消激活拖放并仅允许不同列表之间的拖放操作?如何?
答案 0 :(得分:1)
这是我在这里做的最好的:
$("#sortable1, #sortable2").sortable({
connectWith: ".connectedSortable",
stop: function(event, ui) {
if (ui.item[0].parentNode == this) {
$(this).sortable('cancel');
}
}
}).disableSelection();
答案 1 :(得分:0)
工作演示 :)
http://jsfiddle.net/UnFdU/1/
我在三个事件{@ 1}},recieve
和start
背后建立了一个小逻辑。每次如果列表是相同的列表,那么如果他们可以使用不同的列表,则用户不能将其删除,尝试自己。 下面的小解释
用户开始拖动时stop
说:start
canDropThat = false;
才会被触发,即如果触发了get,则recieve
;因此允许掉线。
最后canDropThat = true;
检查标志,如果是正确的标志,则允许丢弃其他拒绝。
希望它适合原因stop
<强>代码强>
:))