jQuery 多个 Deferred - 如果一个被拒绝,如何处理其余的
jQuery multiple Deferreds - how to process the rest if one is rejected
我有一个 $.when
jquery 语句,它在执行下一组功能之前正在等待对 return 的 3 ajax 请求。我遇到的问题是,如果其中一个请求 return 出现错误 500,则系统不会处理到下一组函数,此时系统会冻结。
有没有办法让 ajax 调用在 $.when 语句中跳过 500 错误。
所有 ajax 函数都在 $.when 之外定义为单独的函数,并且所有函数都在内部具有成功和错误处理函数。
代码如下:
$.when(
ajaxCall1(),
ajaxCall2(),
ajaxCall3()
).done(function(){
// functions that follow
});
因此,如果任何 ajax 调用失败,则完成的过程未完成。我认为即使 ajax 调用失败,它仍然会 return 错误处理。
收到的错误 500 是由于来自 API 的权限块而强制收到的。
done
仅在 when
中的函数不 returns 错误时调用。也许您可以使用 then
而不是 done
并为 doneFilter
和 failFilter
.
触发相同的函数
我有一个 $.when
jquery 语句,它在执行下一组功能之前正在等待对 return 的 3 ajax 请求。我遇到的问题是,如果其中一个请求 return 出现错误 500,则系统不会处理到下一组函数,此时系统会冻结。
有没有办法让 ajax 调用在 $.when 语句中跳过 500 错误。
所有 ajax 函数都在 $.when 之外定义为单独的函数,并且所有函数都在内部具有成功和错误处理函数。
代码如下:
$.when(
ajaxCall1(),
ajaxCall2(),
ajaxCall3()
).done(function(){
// functions that follow
});
因此,如果任何 ajax 调用失败,则完成的过程未完成。我认为即使 ajax 调用失败,它仍然会 return 错误处理。
收到的错误 500 是由于来自 API 的权限块而强制收到的。
done
仅在 when
中的函数不 returns 错误时调用。也许您可以使用 then
而不是 done
并为 doneFilter
和 failFilter
.