在验证输入之前验证显示成功
Validate showing success before validating inputs
我有一个表单,我正在使用jQuery验证来验证输入是否完整。然而,现在的情况是,验证器正在显示消息,但它也在对boxesadd.php进行Ajax调用。我的印象是,这个Ajax调用是在成功验证后才进行的。为什么在输入尚未完成的情况下,它会发展到Ajax事件。感谢
jquery代码
$(function () {
$.validator.setDefaults ({
errorClass: 'form_error',
errorElement: 'div'
});
$("#BA_boxform").validate({
rules: {
BA_customer: {
required: true
},
customerdept: {
required: true
},
customeraddress: {
required: true
},
BA_service: {
required: true
},
BA_box: {
required: true
},
BA_destdate: {
required: true
},
BA_authorised: {
required: true
}
},
messages: {
BA_customer: {
required: '<br />* required: You must select a customer'
},
customerdept: {
required: "<br />* required: You must select a department"
},
customeraddress: {
required: "<br />* required: You must select a customer address"
},
BA_service: {
required: "<br />* required: You must select a service level"
},
BA_box: {
required: "<br />* required: You must enter a box number for intake"
},
BA_destdate: {
required: "<br />* required: You must enter a destruction date"
},
BA_authorised: {
required: "<br />* required"
}
}
});
$('#BA_boxform').on('submit', function () {
var formdata = $('#BA_boxform').serialize() + '&submit=' + $(this).val();
//alert(formdata);
$.ajax({
type: "POST",
url: "/domain/admin/requests/boxes/boxesadd.php",
data: formdata,
dataType: 'json',
success: function (msg) {
//alert(msg);
if (typeof msg.boxerrortext !== "undefined" && msg.boxerrortext == "You must enter a box for intake") {
$("#BA_addbox").html(msg.boxerrortext);
} else {
$("#BA_addbox").html("You have successfully added box(es) " + '<span style="font-weight: bold;color:black;">' + msg.box + '</span>' + ' to the archive.' + '<br />' + 'You may now close this window or input more boxes.');
$("#BA_boxform").get(0).reset();
}
//$("#confirm_department").hide();
/*
var $dialog = $('<div id="dialog"></div>')
.html('Your intake was successfully submitted and will be viewable in the reporting area.<br /><br />Thank you.');
$dialog.dialog({
autoOpen: true,
modal: true,
title: 'Box intake submission successfull',
width: 400,
height: 200,
draggable: false,
resizable: false,
buttons: {
Close: function() {
$( this ).dialog( "close" );
}
}
});
*/
//alert(msg);
//console.log(msg);
//$("#BA_addbox").html(msg.box);
//$("#formImage .col_1 li").show();
//$("#BA_boxform").get(0).reset();
//$("#boxaddform").hide();
}
});
return false;
});
});
只需在进行ajax调用之前检查消息是否为null。
相关文章:
- 消息显示之外的淘汰验证
- 使用Booklet Jquery插件,我如何验证最后一页是否显示
- jquery表单验证复选框错误显示
- javascript文本验证不起作用.警报消息没有't显示
- 表单值未在单击按钮时发布,显示验证错误
- 显示LinkedIn Api的个人资料数据,无需身份验证
- 为什么浏览器为电子邮件验证正则表达式显示不同的反斜杠.如何防止这种情况发生
- 如何使用 javascript 警报窗口显示验证消息
- jQuery 验证显示错误块突出显示
- 使用表单验证 - 显示多个错误
- 如何在文本字段上验证以下条件,并使用 JavaScript 验证显示满足所有条件的弹出页面
- 客户端验证显示问题
- 验证显示:无下拉列表
- 在验证输入之前验证显示成功
- Angularjs表单验证显示页面加载成功
- 选择下拉表单验证(显示文本)
- Javascript验证显示块元素
- ASP服务器端验证显示无效,客户端验证显示有效
- 我的 JavaScript 验证显示错误
- 淘汰-验证显示相同的错误信息两次