jQuery: ~ = селектор: Как получить элементы, которые * не * содержат данный элемент в указанном теге - PullRequest
0 голосов
/ 06 июля 2011

У меня есть поле ввода следующего типа

<input data-of-type="football baseball basketball">

Если бы я хотел получить все теги, которые имеют данные типа "бейсбол", я бы использовал что-то вроде

$("[data-of-type~=baseball]")

Тем не менее, я хочу получить все элементы, которые имеют набор данных типа, но эти данные типа не включают бейсбол.Короче говоря, что-то вроде

$("[data-of-type!~=baseball]")

(что возвращает синтаксическую ошибку)

Ответы [ 3 ]

1 голос
/ 06 июля 2011

Закрыть, но попробуйте это:

$('[data-of-type]').not("[data-of-type~=baseball]")

Или

$('[data-of-type]').filter("[data-of-type!=baseball]")

Или, если хотите:

$('[data-of-type][data-of-type!=baseball]')

http://api.jquery.com/attribute-not-equal-selector/

1 голос
/ 06 июля 2011

Если есть другой распространенный тип, вы можете сказать это: $("[data-of-type~='ball']").not("[data-of-type~=baseball]")

или

$("[data-of-type*='ball']").not("[data-of-type~=baseball]")

0 голосов
/ 06 июля 2011

Возможно, использование неселектора поможет:

$("input:not[data-of-type~=baseball]")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...