Saya memiliki formulir yang memiliki tombol yang mengirimkan formulir. Saya perlu melakukan sesuatu sebelum pengiriman terjadi. Saya mencoba melakukan onClick pada tombol itu tetapi itu terjadi setelah pengiriman.
Saya tidak dapat membagikan kode tetapi, secara umum, apa yang harus saya lakukan di jQuery atau JS untuk menangani ini?
javascript
jquery
html
Jimmy
sumber
sumber
Jawaban:
Jika Anda memiliki formulir seperti ini:
<form id="myform"> ... </form>
Anda dapat menggunakan kode jQuery berikut untuk melakukan sesuatu sebelum formulir dikirimkan:
$('#myform').submit(function() { // DO STUFF... return true; // return false to cancel form action });
sumber
submit
fungsi dapat mengikat langsung ke$('#form')
tanpa fungsi kosong di sekitarnya? EDIT: dokumen menyarankan bahwa panggilan fungsi sekitarnya tidak diperlukan .$(document).ready()
fungsi jQuery , yang memastikan DOM selesai sebelum melampirkansubmit
acara. Jika JS Anda ada di bagian bawah halaman, itu tidak perlu, tetapi jika ada di<head>
bagian maka Anda membutuhkannya. Lihat: stackoverflow.com/q/13062246/135108Dengan asumsi Anda memiliki formulir seperti ini:
<form id="myForm" action="foo.php" method="post"> <input type="text" value="" /> <input type="submit" value="submit form" /> </form>
Anda dapat melampirkan
onsubmit
-event dengan jQuery seperti ini:$('#myForm').submit(function() { alert('Handler for .submit() called.'); return false; });
Jika Anda
return false
formulir tidak akan dikirimkan setelah fungsi, jika Anda mengembalikan true atau tidak ada itu akan dikirim seperti biasa.Lihat dokumentasi jQuery untuk info lebih lanjut.
sumber
Anda dapat menggunakan
onclick
untuk menjalankan beberapa kode JavaScript atau jQuery sebelum mengirimkan formulir seperti ini:<script type="text/javascript"> beforeSubmit = function(){ if (1 == 1){ //your before submit logic } $("#formid").submit(); } </script> <input type="button" value="Click" onclick="beforeSubmit();" />
sumber
Pastikan tombol submit bukan bertipe "submit", jadikan sebagai tombol. Kemudian gunakan acara onclick untuk memicu beberapa javascript. Di sana Anda dapat melakukan apa pun yang Anda inginkan sebelum Anda benar-benar memposting data Anda.
sumber
onsubmit
dari bentuk , yang akan api tidak peduli seberapa formulir dikirimkan.