日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

取消一个正在执行的异步回发

發(fā)布時間:2024/8/5 编程问答 145 豆豆
生活随笔 收集整理的這篇文章主要介紹了 取消一个正在执行的异步回发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
javascript代碼:
?????//pageLoad函數在成功更新后隱藏提示面板
?????function?pageLoad()?
??????
{
??????showmessage(
"false","");
??????}

????
//設定當引發(fā)initializeRequest事件時便執(zhí)行事件處理函數CheckStatus
????Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(CheckStatus);
?????
function?CheckStatus(sender,args)
?????
{
?????
//取得PageRequestManager類的實例
?????var?prm=Sys.WebForms.PageRequestManager.getInstance();
?????
//判斷是否在進行異步回發(fā)且點擊了“取消”按鈕,就調用PageRequestManager的abortPostBack方法取消異步回發(fā)
?????if(prm.get_isInAsyncPostBack()?&?args.get_postBackElement().id=='LinkButton1')
?????
{
????????prm.abortPostBack();
????????
//隱藏提示面板
????????showmessage("false","");
?????}

?????
//判斷是否在進行異步回發(fā)并且又單擊了發(fā)送異步回發(fā)按鈕此時取消新的異步回送并顯示正在處理先前的請求
?????else?if(prm.get_isInAsyncPostBack()?&?args.get_postBackElement().id=='Button1')
?????
{
?????args.set_cancel(
true);
?????showmessage(
"true","仍在處理先前的請求");
?????}

?????
//提示正在取得數據
?????else?if(!prm.get_isInAsyncPostBack()?&?args.get_postBackElement().id=='Button1')
?????
{
???????showmessage(
"true","正在取得數據");
?????}

?????}

?????
//顯示與隱藏提示信息
?????function?showmessage(visiable,msg)
?????
{
?????
if(visiable=="true")
?????
{?
???????
var?loading=$get("loading");
???????loading.style.visibility
='visible';
???????$get(
"message").innerHTML=msg;
?????}

?????
if(visiable=="false")
?????
{?
???????
var?loading=$get("loading");
???????loading.style.visibility
='hidden';
???????$get(
"message").innerHTML=msg;
?????}

?????}

?????
if?(typeof(Sys)?!==?'undefined')?Sys.Application.notifyScriptLoaded();

前臺頁面主要代碼:
<body>
????
<form?id="form1"?runat="server">
????
<div?align="center"??>
????????
<asp:ScriptManager?ID="ScriptManager1"?runat="server"?>
????????????
<Scripts>
????????????????
<asp:ScriptReference?Path="ClientControl.js"?/>
????????????
</Scripts>
????????
</asp:ScriptManager>
????????
<asp:Button?ID="Button1"?runat="server"?Text="獲取時間"?onclick="Button1_Click"?/>
????????
<br?/>
????????
<div?id="loading"?align="left"?style="?visibility:?hidden;">
????????????
<img?alt=""?src="progressbar_long.gif"??/><span?id="message"></span>
????????????
<asp:LinkButton?ID="LinkButton1"?runat="server">取消</asp:LinkButton>
????????
</div>
????????
<asp:UpdatePanel?ID="UpdatePanel1"?runat="server"?UpdateMode="Conditional">
????????????
<ContentTemplate>
?????
????????????????
<span>當前時間:</span><asp:Label?ID="Label1"?runat="server"?Text=""></asp:Label>
?????
????????????
</ContentTemplate>
????????????
<Triggers>
????????????????
<asp:AsyncPostBackTrigger?ControlID="Button1"?EventName="Click">
????????????????
</asp:AsyncPostBackTrigger>
????????????????
<asp:AsyncPostBackTrigger?ControlID="LinkButton1"?EventName="Click"?/>
????????????
</Triggers>
????????
</asp:UpdatePanel>
????
</div>
????
</form>
</body>
Button1_Click事件代碼:
????protected?void?Button1_Click(object?sender,?EventArgs?e)
????
{
????????
//刻意暫停6S
????????System.Threading.Thread.Sleep(6000);
????????Label1.Text?
=?DateTime.Now.ToString();
????}

轉載于:https://www.cnblogs.com/dushouke/archive/2008/06/03/1212757.html

總結

以上是生活随笔為你收集整理的取消一个正在执行的异步回发的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。