2009-07-28 52 views
0

我有一個更新面板和計時器的頁面。該頁面根據計時器每5分鐘更新一次。如果另一個頁面(從原始啓動)關閉,我也有一些JavaScript強制更新面板上的__doPostBack。我認爲我遇到的問題有時強制回發似乎中斷由創建錯誤的計時器觸發的回發。有沒有辦法取消當前的回傳並開始另一個?或檢測回傳是否正在進行?如果這甚至是一個問題優雅地取消Ajax請求

回答

6

是的,你可以取消。

function CancelPostBack() { 

var objMan = Sys.WebForms.PageRequestManager.getInstance(); 

if (objMan.get_isInAsyncPostBack()) 

    objMan.abortPostBack(); 

} 

參考網址
http://www.codedigest.com/Articles/ASPNETAJAX/125_Using_UpdateProgress_Control_Effectively.aspx

+0

您可以防止在基本相同的方法一個新的請求,我相信。只需將檢查鉤到beginRequest處理程序,並在檢測到請求已在進行時返回false。 – tvanfosson 2009-07-28 11:47:36