Javascript 如何在jquery中验证后提交表单
我试图在验证成功后提交表单,因此我运行了下面的代码,两个操作同时执行。我还尝试提交处理程序方法,但它只会出错。我的代码如下所示:Javascript 如何在jquery中验证后提交表单,javascript,php,jquery,forms,Javascript,Php,Jquery,Forms,我试图在验证成功后提交表单,因此我运行了下面的代码,两个操作同时执行。我还尝试提交处理程序方法,但它只会出错。我的代码如下所示: $("#request_form").validate({ debug: false, onfocusout: function(element) { $(element).valid(); }, errorClass : 'has-error', rules: { Subject : "requ
$("#request_form").validate({
debug: false,
onfocusout: function(element) {
$(element).valid();
},
errorClass : 'has-error',
rules: {
Subject : "required",
Screen: "required"
},
messages: {
Subject : "Subject cannot be empty",
Screen: "Screen cannot be empty"
},
submitHandler: function(form) {
form.submit();
}
});
$("#request_form").on('submit',
(function(e)
{
$("#request_form").validate();
$("#request_form").valid()
{
alert("test");
var action = "Provide_Feedback";
var form = $('form')[0];
var formData = new FormData(form);
formData.append('action','Provide_Feedback');
e.preventDefault();
$.ajax({
url: "support_update.php",
type: "POST",
data: formData,
contentType: false,
cache: false,
processData:false,
success: function(data)
{
if (data == "200") {
alert("Your Request Sent.");
window.location = 'provide_feedback.php';
}
else {
alert("There was an error occurred!");
}
}
});
}
}));
插件的
submitHandler
仅在表单有效时触发。你真的不需要你自己的处理程序
将ajax放入submitHandler
中,然后删除form.submit()
form.submit()
告诉浏览器通过默认过程发送表单,如果您想使用ajax提交表单,这显然不是您想要的
考虑到您在ajax成功中使用javascript进行重定向,我们不清楚您为什么要首先使用ajax,但是在submit handler remove
form.submit()中代码>&返回一个数值,如返回1代码>ie
submitHandler:函数(表单){
返回1;
}
在('submit'),函数(e)
调用validate函数并检查返回值是否等于1,然后继续如下操作:
$("#request_form").on('submit',(function(e)
{
if($("#request_form").validate()!=1)
{
return false;
}
//Continue your code here
希望这会有所帮助。此调用正在递归,因为您正在提交函数中调用验证函数,并在验证函数中调用提交函数。无错误,两个操作同时执行。验证错误和表单提交警报同时显示。您好,感谢回复。我刚刚删除表单。提交()并把我的ajax代码,表单验证正确,但现在工作的ajax操作。嗨,通过使用上述代码更改表单提交和ajax调用不工作。为什么不只是正确使用submitHandler选项,因为它是记录在案的?