Rumah >hujung hadapan web >tutorial js >Bagaimana untuk melumpuhkan menekan kekunci Enter untuk menyerahkan kemahiran form_javascript
Apabila penyerahan automatik berlaku, terdapat dua kemungkinan:
Yang pertama ialah menulis kod javascript Apabila pengguna mengklik kekunci Enter, penyerahan borang dicetuskan melalui mekanisme mendengar acara js.
Yang kedua ialah memanfaatkan kelakuan lalai penyemak imbas (sekurang-kurangnya ini yang saya temui). Penyemak imbas mempunyai banyak tingkah laku lalai semasa menghuraikan halaman web Contohnya, jika terdapat borang dan butang hantar pada halaman, maka apabila halaman dibuka, fokus akan jatuh secara automatik pada butang hantar. Begitu juga, jika terdapat hanya satu medan input teks (teks) satu baris dalam borang, penyemak imbas akan menyerahkan borang secara automatik apabila kekunci Enter ditekan dalam medan input ini.
Kami secara amnya tahu tentang situasi pertama dan ia mudah difahami, tetapi untuk kelakuan lalai penyemak imbas kedua, lebih sedikit orang mungkin mengetahui perkara ini secara terperinci (sekurang-kurangnya untuk IE). tingkah laku lalai pada penyerahan borang.
Jika borang mengandungi medan input teks satu baris, tidak kira berapa banyak jenis komponen borang lain yang terkandung di dalamnya, borang akan diserahkan secara automatik apabila Enter diklik dalam medan input.
Contohnya kod berikut:
<form action="" method="post"> <input type="text" name="sdfsdf"/> <input type="checkbox">sdfsdf <input type="hidden"name="aa"/></form>
Jika borang mengandungi dua atau lebih medan input teks satu baris, tidak kira sama ada ia mengandungi jenis komponen borang lain, ia tidak akan diserahkan secara automatik apabila menekan kekunci Enter, contohnya:
<form action="" method="post" <input type="text" name="sdfsdf"/ <input type="text" name="sddf"/</form
Kaedahnya sangat mudah. Kami sudah mempunyainya dalam contoh yang kami berikan di atas. Hanya tambahkan kotak input teks yang lain. Anda boleh mengatakan bahawa untuk tidak menghantar secara automatik, anda perlu menambah kotak input yang tidak berguna Adakah dua kotak input boleh diterima oleh pengguna akhir? Malah, ia boleh diselesaikan Anda boleh menyembunyikan kotak input yang baru ditambah melalui gaya, contohnya:
<form action="" method="post" <input type="text" name="notautosubmit" style="display:none"/ <input type="text" name="username"/</form
Terdapat juga kaedah untuk mengikat butang butang masukkan peristiwa pencetus:
document.onkeypress = function(){
if(event.keyCode == 13) {search();returnfalse;}} dengan kaedah carian ialah acara onclick: