2009-07-28 114 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