HTML 表单即使在将 OnSubmit 设置为 false 后也会提交



我有一个无论如何都无法停止提交的表格。 我看过一些关于SO的类似问题,但没有一个对我有用。 这似乎是一项简单的任务。 我需要它停止提交的原因是,如果字段留空,我想添加一些验证。

.HTML

<form class="application-form" id="application-form" name="application-form" 
autocomplete="off" enctype="multipart/form-data" method="post" onsubmit="return validateForm()" action="AppProcessRequest.cshtml">
...
...
...
<!-- Verify/Submit --> 
<input type="submit" value="Submit" id="btnSubmit" name="submitButton"/>
</form>

JavaScript

function validateForm() {
alert('False');
return false;
};

我的理想伪脚本

function validateForm() {
var emp1label = $('label[class=emp1label]')
if(emp1label.length > 0){
alert('Empty Field.');
return false;
}else{
return true;
}
};

注意:单击"提交"时会弹出警报,但在关闭邮件后仍会发布表单。

您必须使用 preventDefault(( 来阻止默认操作。

function validateForm(evt) {
evt.preventDefault();
alert('False');
return false;
};

问题可能出在returnvalidateForm()之间的新行中:

function validateForm() {
alert('False');
return false;
};
<form class="application-form" id="application-form" name="application-form" 
autocomplete="off" enctype="multipart/form-data" method="post" onsubmit="return validateForm()" action="AppProcessRequest.cshtml">
...
...
...
<!-- Verify/Submit --> 
<input type="submit" value="Submit" id="btnSubmit" name="submitButton"/>
</form>

表单仍在提交的原因是因为jquery-validation具有自己的提交函数。 这覆盖了我为尝试停止提交所做的任何更改。

相关内容

最新更新