Làm cách nào tôi có thể chọn tất cả các phần tử mà không có một lớp nhất định trong jQuery?


226

Đưa ra những điều sau đây:

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

Làm cách nào tôi có thể chọn tất cả trừ Mục 2, AKA giống như:

$("ul#list li!active")

24
$("ul#list").not(".active")hoặc$("ul#list:not(.active)")
N 1.1

Câu trả lời:


424

Bạn có thể sử dụng .not()phương thức hoặc :not()bộ chọn

Mã dựa trên ví dụ của bạn:

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

10
Nếu muốn kiểm tra hai lớp hãy sử dụng như.not(".completed, .current")
Nishantha

vào năm 2019 vanillaJs: document.querySelector ALL ('. foo-class: not (.bar-class): not (.foobar-class'))
Ivan Kolyhalov


18

Bạn có thể sử dụng điều này để chọn tất cả các liyếu tố mà không có lớp:

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


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.