【发布时间】:2018-09-06 18:54:57
【问题描述】:
我使用jQuery Form Plugin 来生成和提交我的Ajax 表单。但是,如果 ajax 调用失败,我想提供重新发送表单的选项,因此构建了一个 displayError() 函数,它将打印网站的顶部栏,其中包含提供的错误和一个提交失败的按钮再次形成。
但是,由于我在这个网站中使用了多个具有相同功能的表单并且显然具有相同的类,我需要告诉 displayError() 函数哪个表单刚刚提交并失败。在 beforeSubmit 或 success 函数中,我有一个所谓的“myform”参数,不幸的是,无论出于何种原因,该参数在错误函数中都不可用。
在ajax调用的错误函数中,是否有可能访问提交的表单的当前DOM对象?
$('.class').ajaxForm({
beforeSubmit: function(data, myForm){
},
success: function(responseText, status, xhr, myForm){
displaySuccess(responseText);
},
error: function(xhr, textStatus, errorThrown){
displayError();
}
});
这只是我正在使用的代码的简化版本,但应该足以理解问题。非常感谢您!
【问题讨论】:
-
$(this)我认为 -
stackoverflow.com/questions/1422143/… 显然没有用于错误的表单参数,您不能使用 $(this),但有些人已将变量定义为解决方法。您可以使用 .each 循环遍历所有表单,并在错误处理程序中定义表单元素。
标签: jquery ajax jquery-forms-plugin