Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 只克隆一次元素,从一个可排序列表克隆到另一个可排序列表_Javascript_Jquery - Fatal编程技术网

Javascript 只克隆一次元素,从一个可排序列表克隆到另一个可排序列表

Javascript 只克隆一次元素,从一个可排序列表克隆到另一个可排序列表,javascript,jquery,Javascript,Jquery,我有两个可排序的ul列表。 我希望能够将元素从第一个列表克隆/复制到第二个列表。 每个列表中的元素必须是唯一的。 当用户第二次尝试克隆某个元素时,应取消该操作并提醒用户该限制 我已经尝试了可排序、可拖动和可拖放的功能很长一段时间了,但都没有用。这就是我取得的成绩: HTML: 创建克隆时,您计划如何处理重复id?您尝试了什么?Draggable在克隆时会删除ID,因此我一直在考虑分配新ID或基于以前的ID创建唯一类。关于你的第二个问题——我尝试了太多(不令人满意)的变化,我认为提供这些例子是徒劳

我有两个可排序的ul列表。
我希望能够将元素从第一个列表克隆/复制到第二个列表。
每个列表中的元素必须是唯一的。
当用户第二次尝试克隆某个元素时,应取消该操作并提醒用户该限制

我已经尝试了可排序、可拖动和可拖放的功能很长一段时间了,但都没有用。这就是我取得的成绩:

HTML:


创建克隆时,您计划如何处理重复id?您尝试了什么?Draggable在克隆时会删除ID,因此我一直在考虑分配新ID或基于以前的ID创建唯一类。关于你的第二个问题——我尝试了太多(不令人满意)的变化,我认为提供这些例子是徒劳的。对,但这样做的目的是帮助你解决问题,你并没有真正提出问题。按照您当前提问的措辞,您希望我们为您完成这项工作。基本上,您需要做的是将两个排序表连接成一个,然后侦听drop事件。如果元素被删除到的列表不是它当前所在的列表,请克隆它并将其附加到新列表(如果它不在该列表中),并防止删除发生,以便原始元素保留在原始列表中。感谢您的反馈,我完全同意您的说法。现在已经更新了JSFIDLE。
<div class="demo">
<ul id="sortable1" class="connectedSortable">
    <li id="one" class="default">Item 1</li>
    <li id="two" class="default">Item 2</li>
    <li id="three" class="default">Item 3</li>
</ul>
<ul id="sortable2" class="connectedSortable">
    <li id="four" class="default">Item a</li>
    <li id="five" class="default">Item b</li>
    <li id="six" class="default">Item c</li>
</ul>
</div>
$('#sortable1').sortable();
$('#sortable2').sortable();