Saya memiliki sekelompok tombol radio yang ingin saya hapus centangnya setelah formulir AJAX dikirimkan menggunakan jQuery. Saya memiliki fungsi berikut:
function clearForm(){
$('#frm input[type="text"]').each(function(){
$(this).val("");
});
$('#frm input[type="radio":checked]').each(function(){
$(this).checked = false;
});
}
Dengan bantuan fungsi ini, saya dapat menghapus nilai di kotak teks, tetapi saya tidak bisa menghapus nilai tombol radio.
Ngomong-ngomong, saya juga mencoba $(this).val("");
tetapi itu tidak berhasil.
javascript
jquery
radio-button
dynamic-forms
kesalahan sistem
sumber
sumber
Jawaban:
salah satu (polos js)
atau (jQuery)
Lihat halaman bantuan jQuery prop () untuk penjelasan tentang perbedaan antara attr () dan prop () dan mengapa prop () sekarang lebih disukai.
prop () diperkenalkan dengan jQuery 1.6 pada Mei 2011.
sumber
prop()
, sementara.attr()
akan dibatasi pada atribut yang sebenarnyaAnda tidak akan memerlukan
each
fungsinyaAtau
Hal yang sama juga berlaku untuk kotak teks Anda:
Tapi Anda bisa memperbaikinya
sumber
Mencoba
Karena banyak browser akan mengartikan 'checked = anything' sebagai true. Ini akan menghapus semua atribut yang dicentang.
Semoga ini membantu.
sumber
Sedikit modifikasi plugin Laurynas berdasarkan pada kode Igor. Ini mengakomodasi kemungkinan label yang terkait dengan tombol radio yang ditargetkan:
sumber
Terima kasih Patrick, kamu membuat hariku! Ini mousedown yang harus Anda gunakan. Namun saya telah meningkatkan kode sehingga Anda dapat menangani sekelompok tombol radio.
sumber
Tulis ulang kode Igor sebagai plugin.
Menggunakan:
Plugin:
sumber
Untuk radio dan grup radio:
sumber
Coba ini, ini akan melakukan trik:
sumber
Mencoba
sumber
Anda juga dapat mensimulasikan perilaku tombol radio hanya menggunakan kotak centang:
Kemudian, Anda dapat menggunakan kode sederhana ini untuk Anda:
Ini berfungsi dengan baik dan Anda memiliki kontrol lebih besar atas perilaku setiap tombol.
Anda dapat mencobanya sendiri di: http://jsfiddle.net/almircampos/n1zvrs0c/
Garpu ini juga memungkinkan Anda membatalkan pilihan semua seperti yang diminta dalam komentar: http://jsfiddle.net/5ry8n4f4/
sumber
Masukkan saja kode berikut untuk jQuery:
Dan untuk javascript:
Tidak perlu meletakkan foreach loop, .each () fubction atau apapun
sumber
Gunakan ini
sumber
Ini hampir baik tetapi Anda melewatkan [0]
Benar - >>
$(this)[0].checked = false;
sumber
this.checked = false;
Anda dapat menggunakan JQuery ini untuk menghapus centang radiobutton
sumber
: D
sumber
Setiap kali Anda memiliki klik dua kali pada radio yang dicentang, perubahan yang dicentang ke false
Radio saya mulai dengan
id=radxxxxxxxx
karena saya menggunakan pemilih id ini.sumber
Pemilih yang benar adalah:
#frm input[type="radio"]:checked
tidak#frm input[type="radio":checked]
sumber