我完全是 jQuery 和 js 的菜鸟,我确信有一个比我想出的更优雅的解决方案 - 但这是我到目前为止所拥有的,我很难过。
由于各种原因,我有一个需要很长时间才能提交的表单 - 我正在使用 validationEngine 来验证内联的表单字段,效果很好。然后我需要添加一个弹出 div 来告诉访问者请耐心等待应用程序执行请求的搜索的原因。
我的原始解决方案效果很好,无论表单是否已完全填写,当访问者单击提交时都会显示弹出 div - 如果表单已完全填写,一切都按预期工作 - 如果他们错过了字段验证引擎显示缺失字段通知和我的弹出 div 仍然显示,但显然表单没有提交。这段代码会发生这种情况:
jQuery(document).ready(function(){
jQuery("#approvalForm").validationEngine('attach');
});
$(document).ready(function() {
$('#approvalForm').submit(function() {
$('#progress').show();
});
});
因此,经过一些研究,我做了一些修改,导致了这段代码:
jQuery(document).ready(function(){
jQuery("#approvalForm").validationEngine('attach', {
onValidationComplete: function(form, status){
if (status == true) {
$('#approvalForm').submit(function() {
$('#progress').show();
});
}
}
});
});
现在一切正常,除了你必须点击提交按钮两次,当你这样做时弹出 div 出现但表单没有提交。