Bagaimana untuk mengelakkan penyerahan borang?
P粉545218185
2023-08-21 13:38:16
<p>Saya mempunyai borang dengan butang hantar di suatu tempat di dalamnya. </p>
<p>Walau bagaimanapun, saya ingin "menangkap" acara komit dan menghalangnya daripada berlaku. </p>
<p>Adakah terdapat cara untuk melakukan ini? </p>
<p>Saya tidak boleh mengubah suai butang serah kerana ia adalah sebahagian daripada kawalan tersuai. </p>
Anda boleh menggunakan acara sebaris seperti ini
onsubmit
atau
Contoh
Kini, apabila membangunkan projek besar, ini mungkin bukan idea yang baik. Anda mungkin perlu menggunakan pendengar acara.
Sila baca lebih lanjut tentang acara sebaris lwn pendengar acara (tambahEventListener dan attachEvent IE) di sini . Kerana saya tidak dapat menjelaskannya lebih baik daripada Chris Baker.
Tidak seperti jawapan lain, mengembalikan
false
hanya merupakan bahagian jawapan. Pertimbangkan kes di mana ralat JS berlaku sebelum pernyataan pulangan...html
skrip
Kembali ke sini
false
不会被执行,表单将以任何方式提交。您还应该调用preventDefault
tidak akan dilaksanakan dan borang akan diserahkan dalam apa jua cara. Anda juga harus memanggilpreventDefault
untuk menghalang tindakan lalai penyerahan borang Ajax.Dalam kes ini, borang tidak akan dihantar walaupun terdapat ralat!
Sebagai alternatif, anda boleh menggunakan
try...catch
blok.