Saya memiliki daftar kotak centang:
<input type="checkbox" name="answer" id="id_1' value="1" />
<input type="checkbox" name="answer" id="id_2' value="2" />
...
<input type="checkbox" name="answer" id="id_n' value="n" />
Saya bisa mengumpulkan semua nilai kotak centang yang dicentang; pertanyaan saya adalah bagaimana bisa mendapatkan semua nilai kotak centang yang tidak dicentang? Saya mencoba:
$("input:unchecked").val();
untuk mendapatkan nilai kotak centang yang tidak dicentang, tetapi saya mendapat:
Kesalahan sintaksis, ekspresi yang tidak dikenal: tidak dicentang.
adakah yang bisa menjelaskan masalah ini? Terima kasih!
Jawaban:
Saat pesan kesalahan menyatakan, jQuery tidak menyertakan
:unchecked
pemilih.Alih-alih, Anda harus membalik
:checked
pemilih:sumber
$("input:checkbox:not(:checked)")
Akan memberimu kotak yang tidak dicentang.sumber
Anda dapat melakukannya dengan memperluas fungsionalitas jQuerys. Ini akan mempersingkat jumlah teks yang harus Anda tulis untuk pemilih.
Anda kemudian dapat menggunakan
$("input:unchecked")
untuk mendapatkan semua kotak centang dan tombol radio yang dicentang.sumber
Juga dapat dicapai dengan js murni sedemikian rupa:
sumber
Ini akan mengambil semua kotak centang yang tidak dicentang dan mengecualikan kotak centang "chkAll" yang saya gunakan untuk mencentang | hapus centang semua kotak centang. Karena saya ingin tahu nilai apa yang saya sampaikan ke database, saya mematikannya, karena kotak centang memberi saya nilai aktif.
sumber
chkAll
kotak jadi apa gunanya menyebutkannya.Anda bisa menggunakan seperti ini:
sumber
Untuk memilih oleh
class
, Anda dapat melakukan ini:sumber
sumber