我正在使用以下代码将数据从服务器异步拉入客户端。错误块中的警报报告服务器上发生的错误。但是,如果用户导航离开页面中间调用,该块也会被触发并抛出一个空的警报容器。有没有办法处理用户更优雅的离开页面(即在离开之前不会抛出空的警报)?也许通过区分用户已导航的错误块而不是服务器上发生的错误?离开页面时出现JQuery Ajax错误
$.ajax({
type: "GET",
url: "/handlers/myHandler.ashx",
async: true,
dataType: "json",
data: "var1=test_val&var2=test_val"
success: function (invoices) {
//Success block
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
});
1)您应该使用HTML元素来报告失败,而不是警报(这是一个很老的和提供信息的方式)。 2)你可以尝试为'unload'或'beforeunload'添加一个钩子来设置一个变量来防止错误,但是我不知道事件的顺序是否正确。 3)你可以简单地避免显示一条消息,如果它是空的。 – Dave 2013-03-10 19:42:33
谢谢,我同意,'提醒'在我们应用程序的早期阶段使用,以方便使用。我会研究这些事件。 – QFDev 2013-03-10 20:26:07
可能的重复[如何处理jQuery ajax后导航离开页面错误](http://stackoverflow.com/questions/9229005/how-to-handle-jquery-ajax-post-error-when-navigating-离开页面) – romor 2016-02-16 20:23:22