我正在使用以下代碼將數據從服務器異步拉入客戶端。錯誤塊中的警報報告服務器上發生的錯誤。但是,如果用戶導航離開頁面中間調用,該塊也會被觸發並拋出一個空的警報容器。有沒有辦法處理用戶更優雅的離開頁面(即在離開之前不會拋出空的警報)?也許通過區分用戶已導航的錯誤塊而不是服務器上發生的錯誤?離開頁面時出現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