JQuery Селектор "Не имеет атрибута"?

Я могу найти div, который имеет такой атрибут:

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

Но если я попытаюсь найти div, у которого нет этого атрибута, я получаю сообщение об ошибке: мой код:

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

Есть ли селектор "не имеет атрибута" в jQuery?

Для справки, здесь используется случай, когда любой div, который не имеет атрибута timestamp, не был добавлен динамически и, следовательно, полезен.

Спасибо!

Ответ 1

Используйте селектор :not().

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

Это, кстати, является допустимым селектором Selectors API, поэтому он не специфичен для jQuery. Он будет работать с querySelectorAll() и в вашем CSS (с учетом поддержки браузера).

Ответ 2

Вы можете отфильтровать селектор с помощью . not() или : not().

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

ИЛИ

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

Ответ 3

Попробуйте с помощью селектора псевдо-класса :not(): http://api.jquery.com/not-selector/

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