jQuery“没有属性”选择器?

时间:2012-10-04 16:13:47

标签: javascript jquery

我可以找到一个具有如下属性的div:

$('.funding-plan-container[data-timestamp]')

但是如果我试图找到一个没有该属性的div,我会收到一个错误 - 我的代码是:

$('.funding-plan-container[!data-timestamp]')

jQuery中是否有“没有属性”选择器?

作为参考,这里的用例是没有动态添加任何没有timestamp属性的div,因此很有用。

谢谢!

3 个答案:

答案 0 :(得分:204)

使用:not()选择器。

$('.funding-plan-container:not([data-timestamp])')

顺便说一句,这是一个有效的Selectors API选择器,因此它并不特定于jQuery。它适用于querySelectorAll()和CSS (给定浏览器支持)

答案 1 :(得分:32)

您可以使用 .not() :not() 选择器来过滤选择器。

$('.funding-plan-container:not([data-timestamp])').

OR

$('.funding-plan-container').not('[data-timestamp]') 

答案 2 :(得分:7)

使用:not()伪类选择器:http://api.jquery.com/not-selector/

进行尝试
$('.funding-plan-container:not([data-timestamp])')