Saya memiliki yang berikut ini:
$(document).ready(function()
{
$("#select-all-teammembers").click(function() {
$("input[name=recipients\\[\\]]").attr('checked', true);
});
});
Saya ingin id="select-all-teammembers"
ketika diklik untuk beralih antara dicentang dan tidak dicentang. Ide ide? itu bukan lusinan baris kode?
jquery
checkbox
jquery-selectors
toggle
AnApprentice
sumber
sumber
$('input[type=checkbox]').trigger('click');
disebutkan oleh @ 2astalavista di bawah ini lebih ringkas dan juga memicu acara "perubahan".sumber
Saya tahu ini sudah lama tetapi pertanyaannya agak ambigu dalam berganti itu berarti setiap kotak centang harus berganti statusnya, apa pun itu. Jika Anda telah memeriksa 3 dan 2 tidak dicentang, maka beralih akan membuat 3 pertama tidak dicentang dan 2 terakhir dicentang.
Untuk itu, tidak ada solusi di sini yang berfungsi karena mereka membuat semua kotak centang memiliki status yang sama, daripada beralih setiap negara kotak centang. Melakukan
$(':checkbox').prop('checked')
pada banyak kotak centang mengembalikan logika AND antara semua.checked
properti biner, yaitu jika salah satunya tidak dicentang, nilai yang dikembalikan adalahfalse
.Anda harus menggunakan
.each()
jika Anda ingin benar-benar beralih setiap negara kotak centang daripada membuat semuanya sama, misalnyaPerhatikan bahwa Anda tidak perlu
$(this)
di dalam penangan karena.checked
properti ada di semua browser.sumber
Inilah cara lain yang Anda inginkan.
sumber
Saya pikir lebih mudah hanya memicu klik:
sumber
Cara terbaik yang bisa saya pikirkan.
atau
atau
sumber
Sejak jQuery 1.6, Anda dapat menggunakan
.prop(function)
untuk mengaktifkan status yang dicentang dari setiap elemen yang ditemukan:sumber
Gunakan plugin ini:
Kemudian
sumber
Dengan asumsi bahwa itu adalah gambar yang harus beralih kotak centang, ini berfungsi untuk saya
sumber
Kotak centang centang semua harus diperbarui sendiri dalam kondisi tertentu. Cobalah klik '# select-all-teammembers' lalu hapus centang beberapa item dan klik select-all lagi. Anda dapat melihat ketidakkonsistenan. Untuk mencegahnya gunakan trik berikut:
BTW semua kotak centang DOM-objek harus di-cache seperti dijelaskan di atas.
sumber
Berikut adalah cara jQuery untuk mengaktifkan kotak centang tanpa harus memilih kotak centang dengan html5 & label:
http://www.bootply.com/A4h6kAPshx
sumber
jika Anda ingin mengaktifkan setiap kotak satu per satu (atau hanya satu kotak juga berfungsi):
Saya sarankan menggunakan .each (), karena mudah dimodifikasi jika Anda menginginkan hal yang berbeda terjadi, dan masih relatif singkat dan mudah dibaca.
misalnya:
di samping catatan ... tidak yakin mengapa semua orang menggunakan .attr () atau .prop () untuk (un) memeriksa hal-hal.
Sejauh yang saya tahu, element.checked selalu bekerja sama di semua browser?
sumber
;)
sumber
Anda dapat menulis seperti ini juga
Hanya perlu memanggil event klik kotak centang ketika pengguna mengklik tombol dengan id '# checkbox-toggle'.
sumber
Pendekatan yang lebih baik dan UX
sumber
Mencoba:
sumber
Yang ini bekerja sangat baik untuk saya.
sumber
!
tanda di depannya ..Contoh paling mendasar adalah:
sumber
cukup Anda bisa menggunakan ini
sumber
dalam dugaan saya, orang yang paling tepat yang menyarankan varian normal adalah GigolNet Gigolashvili, tetapi saya ingin menyarankan varian yang lebih indah. Periksa
sumber
Pengaturan 'dicentang' atau nol, bukan benar atau salah masing-masing akan melakukan pekerjaan.
sumber
Kode ini akan mengaktifkan kotak centang setelah mengklik animator sakelar apa pun yang digunakan dalam templat web. Ganti ".onoffswitch-label" sebagaimana tersedia dalam kode Anda. "checkboxID" adalah kotak centang yang diaktifkan di sini.
sumber
Ya ada cara yang lebih mudah
Pertama, berikan kotak centang Anda contoh kelas 'id_chk'
Kemudian di dalam kotak centang yang akan mengontrol kotak centang 'id_chk' menyatakan:
<input type='checkbox' onchange='js:jQuery(".id_chk").prop("checked", jQuery(this).prop("checked"))' />
Itu semua, semoga ini membantu
sumber