gpt4 book ai didi

javascript - JQuery UI 拖放和排序

转载 作者:行者123 更新时间:2023-11-29 21:40:21 24 4
gpt4 key购买 nike

我正在使用 JQuery UI 可拖动/可放置和可排序操作。

我有两个部分的顶部/底部我正在将列表记录从底部拖到顶部在顶部我正在执行排序

目前一切正常,但是当我对列表记录进行排序时,我在顶部的排序操作中发现了一个问题

假设我放置记录 3 并放入检查元素中的记录 1 我拖动的记录 3 正在复制它的记录(创建它的一个副本)我希望列表记录在排序时不应该被复制/克隆 请有人帮助我解决这个问题谢谢!

http://jsfiddle.net/BCnyU/204/

列表记录复制快照

enter image description here

html

<div class="drop_list">
<ol id="sortable" style="list-style:decimal;">
<?php
for($i=1;$i<=2;$i++)
{
?>
<li id='arrayorder_<?php echo $i;?>' class="draggable_li qitem">
<div class="main_div">
<div class="secondary_div">
<label class="item_div">
<span class="item">Item = <?php echo $i; ?></span>
</label>
</div>
</div>
</li>
<?php
}
?>
</ol>
</div>
<div class="sort_list">
<ul id="draggable">
<?php
for($i=1;$i<=5;$i++)
{
?>
<li id='arrayorder_<?php echo $i;?>' class="draggable_li qitem">
<div class="main_div">
<div class="secondary_div">
<label class="item_div">
<span class="item">Item = <?php echo $i; ?></span>
</label>
</div>
</div>
</li>
<?php
}
?>
</ul>
</div>

JQuery

<script type="text/javascript">

$(document).ready(function() {

$("#sortable").sortable(
{
helper : 'clone',
});

$("ol li").disableSelection();

$(".sort_list li").draggable(
{
tolerance:"pointer",
helper : 'clone',
refreshPositions: true ,
revert : 'invalid',
opacity:.4,
});

$(".drop_list ol").droppable(
{
revert:true,
greedy: true,
refreshPositions: true,
drop : function(ev, ui)
{
$(ui.draggable).clone().appendTo(this);
if($(this)[0].id === "sortable")
{
ui.draggable.draggable( 'disable' ).closest('li').prependTo(ui.draggable.closest('ul'));
return true;
}
}
});
});
</script>

最佳答案

发生这种情况是因为您正在对已删除的元素进行克隆。而不是这个:


$(ui.draggable).clone().appendTo(this);

做:
$(ui.draggable).appendTo(this);

关于javascript - JQuery UI 拖放和排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33184519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com