Provavelmente isso é bem simples.
Eu quero selecionar todos os elementos de uma determinada classe thisClass
, exceto onde está o ID thisId
.
ou seja, algo equivalente a (onde - / menos implica remover):
$(".thisClass"-"#thisId").doAction();
jquery
jquery-selectors
Ankur
fonte
fonte
All selectors are accepted inside :not(), for example: :not(div a) and :not(div,a)
então é só usar os seletores delimitados por vírgula para fazer múltipla(".thisclass:not(#thisid,#thatid)").doAction();
Ou use o método .not ()
https://api.jquery.com/not/
fonte
.not()
não é um seletor. É uma função. Mas também há:not()
seletor como outras respostas mencionadas.Você pode usar a função .not como os exemplos a seguir para remover itens com um ID exato, um ID contendo uma palavra específica, um ID começando com uma palavra, etc ... consulte http://www.w3schools.com/jquery/jquery_ref_selectors .asp para obter mais informações sobre os seletores jQuery.
Ignorar por ID exato:
Ignore IDs que contenham a palavra "Id"
Ignore os IDs que começam com "meu"
fonte
Vou apenas dar uma resposta JS (ES6), caso alguém a esteja procurando:
Atualização (isso pode ter sido possível quando eu postei a resposta original, mas a adicionei agora mesmo assim):
Isso se livra do
Array.from
uso.document.querySelectorAll
retorna aNodeList
.Leia aqui para saber mais sobre como iterar (e outras coisas): https://developer.mozilla.org/en-US/docs/Web/API/NodeList
fonte
$(".thisClass[id!='thisId']").doAction();
Documentação sobre seletores: http://api.jquery.com/category/selectors/
fonte
Usar o
.not()
método para selecionar um elemento inteiro também é uma opção.Dessa forma, pode ser útil se você quiser executar outra ação diretamente com esse elemento.
fonte