成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET異步回調淺析

開發 后端
ASP.NET異步回調是什么呢?ASP.NET異步回調是怎么實現的呢?那么本文就向你介紹ASP.NET異步回調的基本內容。

ASP.NET異步回調是什么呢?讓我們來看看具體的實例:

雖然已經有了ASP.NET AJAX了,最近學習ASP.NET控件的時候,逐步理解了原始的控件異步回調(代碼取自《ASP.NET 2.0 高級編程》):

ASP.NET異步回調實例:

首先,在Render事件中添加好一個事件

  1. protected override void RenderContents(HtmlTextWriter output)   
  2. {   
  3.  output.RenderBeginTag(HtmlTextWriterTag.Div);   
  4.  output.AddAttribute(HtmlTextWriterAttribute.Type,   
  5. "text");   
  6.  output.AddAttribute(HtmlTextWriterAttribute.Id,  
  7.  this.ClientID);   
  8.  output.AddAttribute(HtmlTextWriterAttribute.Name,  
  9.  this.ClientID);   
  10.  output.AddAttribute(HtmlTextWriterAttribute.Value,   
  11. this.Text);   
  12.  
  13.  output.AddAttribute("OnBlur""ClientCallback();");   
  14.  this.AddAttributesToRender(output);   
  15.  output.RenderBeginTag(HtmlTextWriterTag.Input);   
  16.  output.RenderEndTag();   
  17.  output.RenderEndTag();   
  18. }   

這里最重要的就是output.AddAttribute("OnBlur","ClientCallback();");

ASP.NET異步回調實例之在OnPreRender事件中,添加如下代碼:

  1. protected override void OnPreRe   
  2. nder(EventArgs e)   
  3. {   
  4. //Page.ClientScript.RegisterClientScriptInclude("UtilityFunctions", "JScript.js");   
  5. Page.ClientScript.RegisterStartupScript(typeof(Page), "ControlFocus",   
  6. "document.getElementById('" + this.ClientID + "').focus();"true);   
  7. Page.ClientScript.RegisterStartupScript(typeof(Page),  
  8. "ClientCallback","function ClientCallback() {"+"args=document.getElementById('"+this.ClientID+"').value;  
  9. "+Page.ClientScript.GetCallbackEventReference(this,  
  10. "args","CallbackHandler",null,"ErrorHandler",true)+"}");   
  11. //向服務器發送請求,由服務器端生成回調的客戶端腳本。   

也就是在服務器端生成客戶端代碼,注意***一個方法GetCallbackEventReference,我理解的是在服務器端捕捉了客戶端的請求之后,生成相應的客戶端腳本,在服務器端回調的時候,客戶端決定用什么函數處理回調和錯誤。

ASP.NET異步回調實例之服務器端實現接口的一個方法,也就是接收到客戶端的請求之后,由服務器端先處理,然后再把結果和相應代碼發回客戶端。

  1. #region ICallbackEventHandler Members   
  2. public string RaiseCallbackEvent(string eventArgument)   
  3. {   
  4.  int result;   
  5.  if (!Int32.TryParse(eventArgument, out result))   
  6.  throw new Exception("The method is not implemented.");   
  7.   return "Valid Data";   
  8.  
  9. #endregion  

ASP.NET異步回調實例之在jscript.js文件中寫好相應的回調處理函數即可:

  1. var args;   
  2. var ctx;   
  3.  
  4. function ValidateText(ctl)   
  5. {   
  6.  if(ctl.value=='')   
  7.  {   
  8.   alert("Please enter a value");   
  9.   ctl.focus();   
  10.  }   
  11. }   
  12.  
  13. function CallbackHandler(args,ctx)   
  14. {   
  15.  alert("The data is valid");   
  16. }   
  17.  
  18. function ErrorHandler(args,ctx)   
  19. {   
  20.  alert("The data is not a number");   
  21. }   

ASP.NET異步回調的基本情況就向你介紹到這里,希望對你了解和學習ASP.NET異步回調有所幫助。

【編輯推薦】

  1. C#異步調用四大方法詳解
  2. C#網絡編程消息發送問題淺析
  3. C#異步傳輸字符串服務端的實現
  4. C#異步傳輸字符串客戶端的實現
  5. C#網絡編程基本概念TCP淺析
責任編輯:仲衡 來源: 天極網
相關推薦

2009-08-21 17:11:15

ASP.NET異步回調

2009-07-28 16:40:11

ASP.NET異步頁面

2009-08-05 18:36:12

ASP.NET Che

2009-07-24 13:41:15

ASP.NET AJA

2009-08-05 15:50:13

ASP.NET優點

2009-07-31 12:43:59

ASP.NET MVC

2009-08-10 13:32:15

ASP.NET TimASP.NET組件設計

2009-07-29 09:34:54

IsPostBack屬ASP.NET

2009-08-04 17:16:16

ASP.NET代碼優化

2009-08-05 16:17:29

ASP.NET For

2009-08-05 16:50:09

ASP.NET For

2009-07-24 18:02:46

ASP.NET編程

2009-08-05 16:53:14

ASP.NET組件設計

2009-08-10 14:55:43

ASP.NET htt

2009-08-03 10:07:20

ASP.NET Ses

2009-07-27 17:25:53

ASP.NET驗證控件

2009-08-10 18:19:37

ASP.NET安裝環境

2009-07-27 15:34:11

MembershipASP.NET

2009-07-27 14:24:16

ASP.NET訪問權限

2009-08-10 18:43:05

ASP.NET安裝步驟
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成年人在线观看 | 免费激情 | 操视频网站 | 亚洲超碰在线观看 | 日本小电影网站 | 日韩国产精品一区二区三区 | 欧美日韩久久久 | 日韩a视频 | 性一交一乱一透一a级 | 国产日韩久久 | 精品一二三 | 国产成人免费网站 | 亚洲视频www | 欧美91| 亚洲国产精品美女 | 二区中文| 色www精品视频在线观看 | 国产成人精品久久二区二区91 | jizz在线看片 | 日韩中文一区二区 | 国产草草视频 | 日韩av在线中文字幕 | 国产精品成人一区二区三区 | 亚洲欧美v| 一级片视频免费 | 天堂久| 欧美精选一区二区 | 午夜一区二区三区在线观看 | 99热精品国产 | 玖玖玖在线观看 | 亚洲视频在线观看一区二区三区 | 国产精品爱久久久久久久 | 91成人在线视频 | 伊人网站 | 国产精品视频免费观看 | 日韩视频国产 | 91视频正在播放 | 人人澡视频 | 日韩精品在线观看免费 | 久久久123 | 成人福利视频 |