gpt4 book ai didi

javascript - 如何将不同的列表框项目拖放到一起

转载 作者:行者123 更新时间:2023-11-28 08:41:56 25 4
gpt4 key购买 nike

我有 2 个列表框。它彼此相邻放置。用户可以单独对每个列表进行排序,然后我提供了一个复选框。如果选中复选框,则项目将水平相互绑定(bind),然后,如果用户从左侧列表框中选择一个元素,则右侧列表框中的相邻元素也会被选中,然后一起移动以重新排序(排序)。您能帮我选择两个元素并一起移动吗?

最佳答案

我终于设法通过以下方式做到这一点。

我对这两个列表都使用了 jquery-sortable。

在激活可调用中,获取原始列表项

activate: function(event, ui){
srcList = $('#source-container ul.sourceList li');
},

在停止时可调用

stop: function(event, ui){
$(srcList).each(function(idx, elem){
if($(elem).equals($(ui.item)))
orgIndex = idx;
});
$('#source-container ul.sourceList li').each(function(idx, elem){
if($(elem).equals($(ui.item)))
curIndex = idx;
});
$('#target-container ul.targetList li').each(function(idx, elem){
if(idx == orgIndex){
var toIndex = curIndex + 1;
var fromIndex = orgIndex + 1;
if(toIndex < fromIndex)
$('#target-container ul.targetList li:nth-child('+fromIndex+')').insertBefore($('#target-container ul.targetList li:nth-child('+toIndex+')'));
else
$('#target-container ul.targetList li:nth-child('+fromIndex+')').insertAfter($('#target-container ul.targetList li:nth-child('+toIndex+')'));
}

关于javascript - 如何将不同的列表框项目拖放到一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20371461/

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