jQuery NOT选择器

时间:2011-01-15 21:52:07

标签: jquery

我有以下内容:

$('input[name=myCheck]').change(function() {
   $('input:checkbox').removeAttr('checked');
});

我怎么说:removeAttr('checked')除了这个以外的所有人?

2 个答案:

答案 0 :(得分:10)

您可以使用.not()功能过滤掉您不想要的元素。在这种情况下,使用this(指代处理程序中已更改的DOM <input>元素),如下所示:

$('input[name=myCheck]').change(function() {
   $('input:checkbox').not(this).removeAttr('checked');
});

作为旁注,.attr('checked', false)也有效......或者由于您只需要选中一个,请考虑使用一组单选按钮,而不使用任何JavaScript。

答案 1 :(得分:1)

除了名为myCheck的内容,复选框或输入之外的所有内容?

无论哪种方式,它都是在线使用:

:not(<selector>)

或者您可以使用

$('<global selector>').not('<exclusion selector>')

将此作为答案而非评论