Jquery是否自动检查数组的每个元素是否为()方法?

时间:2011-04-08 09:05:24

标签: javascript jquery arrays

我有一个div,那个div里面有很多复选框。我想知道,如果他们都没有检查过。我有这样的代码:

$("#profileAssistPopUp [type='checkbox']").is('checked') 

这回报我其中任何一个都不是真的。首先,我想知道代码行是真的吗?

我的第二个主要问题是

$("#profileAssistPopUp [type='checkbox']")

返回一个数组。如何为数组写.is('checked')Does it automatically checks every element of it and does mean if any of them checked an array is checked or not

我的最后一个问题是如何编写代码的not not:

$("#profileAssistPopUp [type='checkbox']").is('not:checked') //This is not working

PS:我没有对它进行足够的测试,但我觉得它有时会有效,有时候不行吗?

2 个答案:

答案 0 :(得分:2)

使用

$("#profileAssistPopUp [type='checkbox']").is(':checked')

现在第三个使用

$("#profileAssistPopUp [type='checkbox']").not(':checked')

对于第二个:它使用您的选择过滤数组。 你可以看到自己,转到这个链接:http://code.jquery.com/jquery-latest.js 并找到:

您也可以使用此

$("#profileAssistPopUp [type='checkbox']").not(':checked').length > 0 

答案 1 :(得分:0)

来自jQuery文档:

  

针对选择器检查当前匹配的元素集,如果这些元素中至少有一个与选择器匹配,则返回true。

来源 - http://api.jquery.com/is/

如果选中一个或多个复选框,则您的函数将返回true。如果你需要确保它们都被检查过,你需要使用$ .each遍历匹配的元素并分别检查每个元素。

此外,正确的选择器将是:

$("#profileAssistPopUp [type=checkbox]").is(':checked')