jQuery: Memilih berdasarkan kelas dan jenis input


119

Saya ingin memilih sekumpulan elemen yang keduanya dari jenis input tertentu (katakanlah, kotak centang) dan memiliki kelas tertentu menggunakan jQuery. Namun, ketika saya mencoba yang berikut ini:

 $("input:checkbox .myClass")

Saya tidak mendapatkan item apa pun dikembalikan. Bagaimana saya bisa melakukannya di jQuery?

Jawaban:


209

Pemilih Anda sedang mencari turunan dari elemen kotak centang yang memiliki kelas .myClass.

Coba ini sebagai gantinya:

$("input.myClass:checkbox")

Lihat aksinya .

Saya juga menguji ini:

$("input:checkbox.myClass")

Dan itu juga akan bekerja dengan baik. Menurut pendapat saya, sintaks ini benar-benar terlihat agak jelek, karena sebagian besar waktu saya mengharapkan :pemilih gaya datang terakhir. Namun, seperti yang saya katakan, salah satunya akan berhasil.


51

Jika Anda ingin mendapatkan input jenis itu dengan kelas itu, gunakan:

$("input.myClass[type=checkbox]")

sintaks pemilih [] memungkinkan Anda untuk memeriksa salah satu atribut elemen. Lihat spesifikasi untuk lebih jelasnya


6

Anda harus menggunakan (untuk kotak centang) :checkboxdan .nameatribut untuk dipilih berdasarkan kelas.

Sebagai contoh:

$("input.aclass:checkbox")

The :checkboxpemilih:

Cocok dengan semua elemen masukan dari kotak centang tipe. Menggunakan selektor-psuedo $(':checkbox')ini sama dengan $('*:checkbox') yang merupakan pemilih lambat. Dianjurkan untuk dilakukan $('input:checkbox').

Anda harus membaca dokumentasi jQuery untuk mengetahui tentang penyeleksi.


4

Anda harus menggunakan nama kelas seperti ini

$(document).ready(function(){
    $('input.addCheck').prop('checked',true);
});

Coba Gunakan ini demo langsung


1
jawaban tidak relevan dengan pertanyaan.
Avnish alok

1
namun jawabannya sepenuhnya membantu orang lain yang mencari hal yang serupa, tetapi bukan pertanyaan OP yang tepat.
camdixon


3

Untuk berjaga-jaga jika ada boneka seperti saya yang mencoba saran di sini dengan sebuah tombol dan tidak menemukan apa pun yang berfungsi, Anda mungkin menginginkan ini:

$(':button.myclass')
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.