Como posso selecionar todos os elementos sem uma determinada classe no jQuery?


226

Dado o seguinte:

<ul id="list">
    <li>Item 1</li>
    <li class="active">Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
    <li>Item 5</li>
</ul>

Como posso selecionar todos, exceto o Item 2, também conhecido como:

$("ul#list li!active")

24
$("ul#list").not(".active")ou$("ul#list:not(.active)")
N 1.1

Respostas:


424

Você pode usar o .not()método ou :not()seletor

Código com base no seu exemplo:

$("ul#list li").not(".active") // not method
$("ul#list li:not(.active)")   // not selector

10
Se quiser verificar o uso de duas classes como.not(".completed, .current")
Nishantha

Em 2019 vanillaJs: document.querySelectorAll ('. foo-class: not (.bar-class): not (.foobar-class'))
Ivan Kolyhalov


18

Você pode usar isso para escolher todos os lielementos sem classe:

$('ul#list li:not([class])')


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.