Comment puis-je sélectionner tous les éléments sans classe donnée dans jQuery?


226

Compte tenu des éléments suivants:

<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>

Comment puis-je sélectionner tout sauf l'article 2, AKA quelque chose comme:

$("ul#list li!active")

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

Réponses:


424

Vous pouvez utiliser la .not()méthode ou le :not()sélecteur

Code basé sur votre exemple:

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

10
Si vous voulez vérifier deux classes, utilisez comme.not(".completed, .current")
Nishantha

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


18

Vous pouvez l'utiliser pour sélectionner tous les liéléments sans classe:

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


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.