Javascript 使用JQ递归地从表中删除行
我想编写一个递归函数,从表中删除行 我有要保留的行数,在该数之后,我希望删除所有行 例如: 我有5号,所以前5排需要留下,其余的需要离开。(使用行id) 代码:Javascript 使用JQ递归地从表中删除行,javascript,jquery,recursion,Javascript,Jquery,Recursion,我想编写一个递归函数,从表中删除行 我有要保留的行数,在该数之后,我希望删除所有行 例如: 我有5号,所以前5排需要留下,其余的需要离开。(使用行id) 代码: 我不知道我将有多少行,这就是为什么我认为我需要一个递归的解决方案 你可以用这个 $(document).ready(function(){ var deleteAfter = 5 $.each($("#table tr"),function(key,value){ //do your conditional here
我不知道我将有多少行,这就是为什么我认为我需要一个递归的解决方案 你可以用这个
$(document).ready(function(){
var deleteAfter = 5
$.each($("#table tr"),function(key,value){
//do your conditional here
if(key > deleteAfter-1){
value.remove();
}
});
alert("now the table row is "+$("#table tr").length);
}))
这是有效的
很抱歉,如果您想使用id作为输入,请使用此id
$(document).ready(function () {
//define the id first
var deleteAfter = $("#tr5");
var elementNo;
$.each($("#table tr"), function (key, value) {
if (this.id == deleteAfter.attr("id")){
elementNo = key;
}
});
$.each($("#table tr"), function (key, value) {
//do your conditional here
if (key > elementNo) {
value.remove();
}
});
alert("now the table row is " + $("#table tr").length);
});
我更新了您可以使用几种不同的jQuery筛选方法:
var numRows=5;
$('#table tr').slice(numRows).remove();
或
参考资料:
您可以使用:gt()选择器,它选择大于索引的所有元素,然后您可以删除它
$(document).ready(function () {
var index = 4; // set index 4, so want to remove 5 elements( 0 to 4)
$('#table tr:gt('+index+')').remove();
});
$('#table tr:gt(' + (numRows-1) + ')').remove();
$(document).ready(function () {
var index = 4; // set index 4, so want to remove 5 elements( 0 to 4)
$('#table tr:gt('+index+')').remove();
});