【发布时间】:2010-05-07 16:56:20
【问题描述】:
对于 jquery 表单插件http://jquery.malsup.com/form/#options-object,我看到了成功回调,但是如果出现网络问题等故障,我该如何运行代码?
【问题讨论】:
标签: jquery
对于 jquery 表单插件http://jquery.malsup.com/form/#options-object,我看到了成功回调,但是如果出现网络问题等故障,我该如何运行代码?
【问题讨论】:
标签: jquery
来自网站:
除了下面列出的选项之外,您还可以将任何标准 $.ajax 选项传递给 ajaxForm 和 ajaxSubmit
大概这意味着您可以添加一个“错误”属性以及您希望在发生错误时执行的函数。
看插件代码好像是这样的:
$.fn.ajaxForm = function(options) {
...
$(this).ajaxSubmit(options);
...
}
...
$.fn.ajaxSubmit = function(options) {
...
$.ajax(options);
...
}
【讨论】:
应该启用'error'回调处理程序:
“注意:除了下面列出的选项之外,您还可以将任何标准 $.ajax 选项传递给 ajaxForm 和 ajaxSubmit。” (http://jquery.malsup.com/form/#options-object)
【讨论】:
我以前从未使用过该插件,请尝试:
error: function() { }
就像来自 jQuery 的普通 $.ajax 一样。如果这不起作用,您可以随时解决 在您的服务器端代码上:
JsonResponse ActionMethod(params) {
try {
// logic goes here
}
catch (e) {
return json(new { error = e.message });
}
}
在你的 javascript 中
$.ajaxForm({
success: function() {
if (data.error) {
alert(error);
}
else {
//logic goes here
}
}
});
【讨论】: