1

为什么我不能这样做?

$(this).prevAll("input").slice(-5).is(":checked").length

我想知道最后 5 个输入中有多少被检查了。

4

2 回答 2

3

你不想要.is.is测试条件并返回一个布尔值。用于.filter获取匹配项:

$(this).prevAll("input").slice(-5).filter(":checked").length
于 2012-06-08T01:57:46.803 回答
2

.is()根据集合中的任何元素是否与选择器匹配,而不是元素集合本身,返回真/假。

您可能打算.filter()改用它,它返回一组与您的选择器匹配的元素:

$(this).prevAll("input").slice(-5).filter(":checked").length
于 2012-06-08T01:57:32.730 回答