Ini mungkin cukup sederhana.
Saya ingin memilih semua elemen dari kelas yang diberikan thisClass
, kecuali di mana id berada thisId
.
yaitu sesuatu yang setara dengan (di mana - / minus berarti hapus):
$(".thisClass"-"#thisId").doAction();
jquery
jquery-selectors
Ankur
sumber
sumber
All selectors are accepted inside :not(), for example: :not(div a) and :not(div,a)
jadi gunakan saja penyeleksi dibatasi koma untuk melakukan banyak(".thisclass:not(#thisid,#thatid)").doAction();
Atau gunakan metode .not ()
https://api.jquery.com/not/
sumber
.not()
bukan pemilih. Itu sebuah fungsi. Namun ada juga:not()
pemilih seperti jawaban lain yang menyebutkan.Anda dapat menggunakan fungsi .not seperti contoh berikut untuk menghapus item yang memiliki id yang tepat, id yang mengandung kata tertentu, id yang dimulai dengan kata, dll ... lihat http://www.w3schools.com/jquery/jquery/jquery_ref_selectors .megang informasi lebih lanjut tentang pemilih jQuery.
Abaikan oleh Exact ID:
Abaikan ID yang berisi kata "Id"
Abaikan ID yang dimulai dengan "saya"
sumber
Saya hanya akan memberikan jawaban JS (ES6), kalau-kalau ada orang yang mencarinya:
Pembaruan (ini mungkin terjadi ketika saya memposting jawaban asli, tetapi tetap menambahkan ini sekarang):
Ini menghilangkan
Array.from
penggunaan.document.querySelectorAll
mengembalikan aNodeList
.Baca di sini untuk mengetahui lebih lanjut tentang cara mengulanginya (dan hal-hal lain): https://developer.mozilla.org/en-US/docs/Web/API/NodeList
sumber
$(".thisClass[id!='thisId']").doAction();
Dokumentasi pada pemilih: http://api.jquery.com/category/selectors/
sumber
Menggunakan
.not()
metode dengan memilih seluruh elemen juga merupakan opsi.Cara ini bisa berguna jika Anda ingin melakukan tindakan lain dengan elemen itu secara langsung.
sumber