jQuery删除基于索引的复选框

时间:2014-07-02 16:23:03

标签: javascript jquery checkbox

我有以下jQuery代码:

工作代码

if(report==='Group 1'){
    $('.spandiv').not(':eq(17)').remove();
}

此工作正常,并删除所有不等于17的复选框。但是,我现在要做的只是删除某些复选框。

我尝试了以下内容:

非工作代码

if(report==='Group 1'){
    $('.spandiv').is(':eq(17)').remove();
    $('.spandiv').is(':eq(16)').remove();
    $('.spandiv').is(':eq(12)').remove();
    $('.spandiv').is(':eq(6)').remove();
    $('.spandiv').is(':eq(5)').remove();
    $('.spandiv').is(':eq(4)').remove();
}

我曾(明显错误地)认为这会起作用,但事实并非如此。我显然做错了什么,并希望得到任何反馈/帮助。

2 个答案:

答案 0 :(得分:1)

$('.spandiv:eq(17)').remove();
$('.spandiv:eq(16)').remove();
$('.spandiv:eq(12)').remove();
$('.spandiv:eq(6)').remove();
$('.spandiv:eq(5)').remove();
$('.spandiv:eq(4)').remove();

is函数只是一个布尔检查。您也可以将其替换为.filter().eq()

$('.spandiv').eq(17).remove();
$('.spandiv').eq(16).remove();
$('.spandiv').eq(12).remove();
$('.spandiv').eq(6).remove();
$('.spandiv').eq(5).remove();
$('.spandiv').eq(4).remove();

答案 1 :(得分:1)

如果选择器与所选元素匹配,

.is方法将返回布尔truefalse。您正在寻找.eq方法或:eq选择器(或最后一种情况下的.filter):

$('.spandiv:eq(17)').remove();  // this is the same as
$('.spandiv').eq(17).remove();  // this and the same as
$('.spandiv').filter(':eq(17)').remove();  // this
相关问题