Ia diperlukan untuk memasukkan kata laluan dan tekan Enter untuk mencetuskan acara latar belakang. Ia seolah-olah menjadi keperluan yang sangat mudah, tetapi ia menghadapi banyak masalah.
Kandungan HTML terutamanya termasuk kotak teks input kata laluan dan butang untuk mencetuskan peristiwa latar belakang.
1 Selepas kotak teks TextBox mendapat fokus, hanya tekan Enter dan halaman akan dimuat semula.
Selepas mengkaji kod dengan teliti, ternyata apabila terdapat hanya satu kawalan kotak teks pada halaman, halaman akan dimuat semula apabila menekan Enter.
Penyelesaian: Tambahkan kawalan TextBox tersembunyi pada halaman.
Prinsip khusus tidak diketahui!
2. Gunakan Jquery untuk melaksanakan kaedah:
$(document).ready(function(){ $("#tbPassword").focus(); $('#bPassword').keydown(function(e){ if(e.keyCode == 13){ $("#ctl00_ContentBody_btnAccept_linkButton")[0].click(); } }); });
3. Disebabkan oleh pelbagai sebab, kaedah pelaksanaan Jquery tidak boleh digunakan, jadi kami perlu menggunakan JS sebagai isu yang paling menyusahkan.
document.getElementByIdx_x_x("tbPassword").onkeypress = function(event){ var keynum; if(window.event) // IE { keynum = window.event.keyCode; } else if(event.which) // Netscape/Firefox/Opera { keynum = event.which; } if (keynum == 13) document.getElementByIdx_x_x('ctl00_ContentBody_btnAccept_linkButton').click(); }
Penerangan:
Baca kekunci papan kekunci di bawah IE:
keynum = event.keyCode; // 字母d,keynum=100 keychar = String.fromCharCode(keynum); // 将keynum转换成字符d
Baca kekunci papan kekunci dalam FireFox:
keynum = event.which; // 字母d,keynum=100 keychar = String.fromCharCode(keynum); // 将keynum转换成字符d
Sebagai contoh, dalam IE, hanya terdapat atribut KeyCode, manakala dalam FireFox, terdapat atribut yang mana dan charCode, dan dalam Opera, terdapat kod kunci dan atribut mana, dsb.
Oleh itu, isu keserasian ini telah diselesaikan dalam Jquery.
Di atas adalah keseluruhan kandungan artikel ini, saya harap ia akan membantu kajian semua orang.