通过jquery从submit()获取返回值
问题描述:
我有一个包含多个表单的页面。每个表单都有自己的保存按钮,它使用.ajax()验证并显示错误消息以发布(不是普通的post方法)。我还在jQuery click()处理程序捕获的表单之外有一个Next按钮。这个函数遍历每个表单并为每个表单调用$(formname).submit()。通过jquery从submit()获取返回值
最终,我需要知道各个表单是否通过了验证,以确定是否应该发生重定向。我在submit函数的validate检查的else语句中添加了return false;
,但我看不到如何检索它。
有alert($(this).submit());
只是返回对象不是返回值。无需重新编码每个表单的整个$ .ajax邮政编码,无论如何,我可以找出提交失败?
//next button click
$('#savenext').click(function() {
var finalsuccess;
$('.record_form').each(function (index) {
alert($(this).submit()); //I want this to be true or false
});
//forms each have their own submit handler
$(formname).submit(function (e) {
e.preventDefault();
var form = $(this);
if($(form).valid()) { //validate the form, return false if it is not valid.
//Post the form to the action if it passes
$.ajax({
url: form.attr('action'),
type: "POST",
dataType: "text json",
data: form.serialize(),
success: function (response) {
//does some success messages here
},
});
}
else {
return false;
}
});
感谢
答
如果有人需要知道,我发现没有办法让提交返回一个成功值。最后,我将ajax文章更改为async:false,并将其放入一个函数中,该函数通过ajax文章的成功或错误事件返回布尔值。由于服务器调用的连续性不如此快,但我将添加一个加载对话框以帮助完成此操作。
为什么不使用'jquery Validation'插件呢? : -/ – uday 2012-02-26 07:29:56
Hi @Dave。验证一切都很顺利,所以我不需要改变任何。我只需要找出从form.submit()获取响应的最佳方法。该插件中是否有允许这样做的内容? – Danni 2012-02-26 08:44:43