我试图创建一个拖放从一个列表到另外两个之一。我一直在试图使用draggable和droppable,但这种排序的演示看起来更像是我想要的东西:http://jqueryui.com/sortable/#connect-listsjQuery:拖放到多个列表,不附加或可拖动
我试图用拖动/可弃做到这一点的,因为我的严格要求:
我都打印在页面上几天
每一天都有3所列出:入站,等待和处理从入站
项目可以拖到任未决或处理列表
这些项目将被附加到所施加的列表上的待决和处理列表
物品不能被拖动的底部,除了那些起源入站列表
由于这些我的想法是有个人入站列表项可拖动并追加到应用列表的末尾。
这里是我使用的JS代码:
$(document).ready(function() {
$('li.drag').draggable({
revert: "invalid",
revertDuration: 100
});
$('.pending-list').droppable({
accept: ".inbound li",
drop: function(event, ui) {
$(this).appendChild($(ui));
}
});
$('.processed-list').droppable({
accept: ".inbound li",
drop: function(event, ui) {
$(this).append($(ui));
}
});
});
这里是我的小提琴,但你可以看到(1)它没有应用到列表的底部,(2)我动不了它再次之后: http://jsfiddle.net/wGWTS/1/
我有稍微跟进一下:当我把这个项目放到这个列表中时,我希望在新列表中重新排序(我有一个'data-order'字段来排序每个'li')。任何线索怎么做呢?谢谢! – Bing
当我构建示例时,我正在考虑这个问题。从我所知道的情况来看,如果你希望这些物品仍然与其他物品分类,那么它们也将是可拖动的,这是不希望的。我在那里有一个办法,但这不是微不足道的。 你可能想看看这个所谓的http://stackoverflow.com/questions/1134976/how-may-i-sort-a-list-alphabetically-using-jquery,看看第二个答案,尝试构建你的用自己的比较器按'data-order'排序 – chiliNUT
这对于像我这样的拖拽新手非常有用。非常感谢! –