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])')