我正在嘗試使用jQuery的submit()方法提交HTML表單。Jquery提交表單不起作用
我正在註冊一個submitHandler來檢查formdata。如果檢查失敗,用戶可以在對話中選擇是否繼續或取消。在繼續我註銷我的Checkeventhandler並調用窗體上的submit(),但沒有任何反應。
這裏是我的編碼:
<form action="test.php" id="summary_01" method="post">
</form>
<script type="text/javascript">
$(document).ready(function() {
$('#summary_01').on('submit', function(e){
var result = check();
if (!result) {
e.preventDefault();
}
return result;
});
});
function check() {
var result = false;
// do some Checks, setting result= true, if OK
if(!result) {
$("#dialog-message").dialog({
modal: true,
resize : true,
width : 'auto',
buttons: {
Ok: function() { //Sending, despite check failed
$('#summary_01').unbind('submit'); //remove checkingForm Eventhandler
$('#summary_01').submit();
$(this).dialog("close");
},
Cancel : function() {
$(this).dialog("close");
}
}
});
}
return result;
}
</script>
我認爲這個問題是e.preventDefault(),但對話的調用是異步的,因此我阻止提交,直到用戶選擇繼續或取消。
也許你可以幫我。感謝您的幫助提前。
你可以試試這個:$( '#form01')提交(函數(E){ – VRK
不同的ID $( '#summary_01')和$( '#form01') – BenG
你會在技術上有多大?如果你在$('#summary_01')。submit();之前創建了一個無限循環,那麼你提交的文件就沒有通過,因爲每次你提交你運行你的preventDefault。目前你正在彈出第二個對話框,然後關閉其中的兩個 –