我正在使用一个应用程序,您可以在两个嵌套的可排序项之间拖放列表项:http://jsfiddle.net/jhogervorst/Ge7eK/9/
我的问题是你如何更改代码,以便将元素从一个列表复制到另一个列表,而不是移动它们?似乎是一个简单的改变,但我无法弄清楚。
感谢。
答案 0 :(得分:2)
我在那里大部分时间都得到了它:
receive: function(event, ui){
var ele = document.elementFromPoint(ui.position.left, ui.position.top);
var newEle = ui.item.clone();
newEle.attr("id", ""); // trying to prevent duplicate ids
$(ele).after(newEle);
},
remove: function(event, ui){
event.preventDefault(); // this stops the item from being removed
}
当您将项目从列表A拖到列表B时,会发生错误,然后将列表A中的其他项目拖到该复制的项目上。我不确定它为什么会发生,但它可能与您正在使用的ID有关。
此外,跌落位置可能有点挑剔。如果占位符项位于列表中的两个项目之间(而不是略微重叠),则会将该项目添加到列表的末尾。