我正在尝试使用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。目前你正在弹出第二个对话框,然后关闭其中的两个 –