Apabila membuat butang pilih kotak semak, masalah berlaku Gunakan penyataan $.attr('checked',true) untuk menukar atribut kotak semak itu adalah yang pertama dalam penyemak imbas chrome 't berfungsi selepas klik pertama adalah sah.
Baidu mengambil masa yang lama untuk mengetahui sebabnya ialah atribut HTML dibahagikan kepada atribut dan sifat Mari kita panggil sifat yang terakhir buat masa ini.
Atribut yang ditandakan dibahagikan kepada atribut->ditandai dan harta->true, false.
Untuk kotak pilihan, jika checked="checked" tidak ditakrifkan, hasil alert($.attr("checked")) tidak ditentukan. Jika ditakrifkan, hasilnya disemak. Atribut tidak berubah apabila status kotak semak berubah.
Jika prop($.attr("checked")) digunakan, output masing-masing adalah palsu dan benar. Harta berubah apabila ia berubah.
Jadi prop() hendaklah digunakan apabila mengubah suai atribut yang ditandakan. prop() telah ditambah selepas jQuery 1.6.
Carta tentang sifat lain yang serupa di Internet:
Selain itu, dalam versi sebelum IE9, jika harta itu tidak dipadamkan sebelum elemen DOM dialih keluar, menggunakan kaedah .prop() untuk menetapkan nilai sifat elemen DOM (kecuali jenis mudah: nombor, rentetan, boolean ) akan menyebabkan kebocoran ingatan. Untuk menetapkan nilai objek DOM dengan selamat dan mengelakkan kebocoran memori, anda boleh menggunakan kaedah .data(). Saya belum menemuinya lagi, jadi saya akan menulisnya di sini.