Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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_Html Table - Fatal编程技术网

Javascript 如何交换表中的两组行

Javascript 如何交换表中的两组行,javascript,jquery,html-table,Javascript,Jquery,Html Table,我在选定的表中有两组行: var slice1 = $( table ).children( "tr" ).slice( i - rowsPerItem, i ); var slice2 = $( table ).children( "tr" ).slice( i, i + rowsPerItem ); 我可以使用css突出显示这些行,并验证它们是否正确。现在我想将它们在父表中的位置作为一个集合交换。这两个集合在表中总是一个接一个,并且包含相同数量的行 我尝试过的所有操作都只移动一行: $(

我在选定的表中有两组行:

var slice1 = $( table ).children( "tr" ).slice( i - rowsPerItem, i );
var slice2 = $( table ).children( "tr" ).slice( i, i + rowsPerItem );
我可以使用css突出显示这些行,并验证它们是否正确。现在我想将它们在父表中的位置作为一个集合交换。这两个集合在表中总是一个接一个,并且包含相同数量的行

我尝试过的所有操作都只移动一行:

$( slice1 ).after( slice2[slice2.length-1] );
如何将集合或行按相同顺序保持在一起,但交换它们在表中的位置

下面是我看到的一个例子:

你试过这个吗

$(".anyOtherTableRow").after(slice1).after(slice2);
你试过这个吗

$(".anyOtherTableRow").after(slice1).after(slice2);

尝试使用
insertAfter
方法:

$("#SwapButton").click(function () {
    var i = 2;
    var rowsPerItem = 2;
    var $tr = $("#TheTable").find('tr');

    var $slice1 = $tr.slice(i - rowsPerItem, i);
    var $slice2 = $tr.slice(i, i + rowsPerItem);

    $slice1.insertAfter($slice2[$slice2.length - 1]);
});

尝试使用
insertAfter
方法:

$("#SwapButton").click(function () {
    var i = 2;
    var rowsPerItem = 2;
    var $tr = $("#TheTable").find('tr');

    var $slice1 = $tr.slice(i - rowsPerItem, i);
    var $slice2 = $tr.slice(i, i + rowsPerItem);

    $slice1.insertAfter($slice2[$slice2.length - 1]);
});

你能提供一个演示吗?@undefined我添加了一个JSFIDLE示例。你能提供一个演示吗?@undefined我添加了一个JSFIDLE示例。如果我按字面意思使用那行代码,我会得到与以前相同的错误结果。我可以发誓我尝试过,但我猜不会。那很好。我发誓我试过了,但我想不是。那很好用。