我有一個表單,它有一個提交表單的按鈕。在提交之前我需要做些事情。我試着在該按鈕上執行onClick,但它在提交後發生。如何提交之前做些什麼?
我不能共享代碼,但是,一般來說,我應該怎麼做jQuery或JS來處理這個問題?
我有一個表單,它有一個提交表單的按鈕。在提交之前我需要做些事情。我試着在該按鈕上執行onClick,但它在提交後發生。如何提交之前做些什麼?
我不能共享代碼,但是,一般來說,我應該怎麼做jQuery或JS來處理這個問題?
如果你有一個形式,例如:
<form id="myform">
...
</form>
您可以使用下面的jQuery代碼做一些在提交表單前:
$('#myform').submit(function() {
// DO STUFF...
return true; // return false to cancel form action
});
確保提交按鈕不是鍵入「提交」,使其成爲一個按鈕。然後使用onclick事件觸發一些JavaScript。在你發佈數據之前,你可以做任何你想做的事情。
可以通過多種方式提交表單,例如在某些字段中按Enter鍵。綁定到一個可能不被點擊的按鈕上的點擊不是一個好主意。其他答案顯示瞭如何綁定* form *的'onsubmit',無論提交表單如何,它都會觸發。 – Jason
假設你有一個這樣的形式:
<form id="myForm" action="foo.php" method="post">
<input type="text" value="" />
<input type="submit" value="submit form" />
</form>
您可以將onsubmit
-event使用jQuery這樣的:
$('#myForm').submit(function() {
alert('Handler for .submit() called.');
return false;
});
如果return false
形式將不會被後提交函數,如果你返回true或沒有,它將像往常一樣提交。
查看jQuery documentation瞭解更多信息。
可以使用onclick
提交表單這樣之前運行一些JavaScript或jQuery代碼:
<script type="text/javascript">
beforeSubmit = function(){
if (1 == 1){
//your before submit logic
}
$("#formid").submit();
}
</script>
<input type="button" value="Click" onclick="beforeSubmit();" />
*咳嗽* [的jsfiddle示例](http://jsfiddle.net/XVAPa/)* *咳嗽 –
@布拉德克里斯蒂如果我只能接受評論作爲答案。感謝非常有幫助。 – Jimmy
當stackover關閉一個問題時,我討厭它。你可以只提交表單前處理使用火以下時序以下事件你的行動: 1的onmouseover 2-的OnMouseMove 3- onmousedown事件 4-聚焦狀態 5- onmouseup 6-的onclick 7的onsubmit –