日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
ASP.NET異步回調(diào)淺析

ASP.NET異步回調(diào)是什么呢?讓我們來(lái)看看具體的實(shí)例:

創(chuàng)新互聯(lián)成立于2013年,先為固鎮(zhèn)等服務(wù)建站,固鎮(zhèn)等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為固鎮(zhèn)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

雖然已經(jīng)有了ASP.NET AJAX了,最近學(xué)習(xí)ASP.NET控件的時(shí)候,逐步理解了原始的控件異步回調(diào)(代碼取自《ASP.NET 2.0 高級(jí)編程》):

ASP.NET異步回調(diào)實(shí)例:

首先,在Render事件中添加好一個(gè)事件

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

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

ASP.NET異步回調(diào)實(shí)例之在OnPreRender事件中,添加如下代碼:

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

也就是在服務(wù)器端生成客戶端代碼,注意***一個(gè)方法GetCallbackEventReference,我理解的是在服務(wù)器端捕捉了客戶端的請(qǐng)求之后,生成相應(yīng)的客戶端腳本,在服務(wù)器端回調(diào)的時(shí)候,客戶端決定用什么函數(shù)處理回調(diào)和錯(cuò)誤。

ASP.NET異步回調(diào)實(shí)例之服務(wù)器端實(shí)現(xiàn)接口的一個(gè)方法,也就是接收到客戶端的請(qǐng)求之后,由服務(wù)器端先處理,然后再把結(jié)果和相應(yīng)代碼發(fā)回客戶端。

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

ASP.NET異步回調(diào)實(shí)例之在jscript.js文件中寫好相應(yīng)的回調(diào)處理函數(shù)即可:

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

ASP.NET異步回調(diào)的基本情況就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)ASP.NET異步回調(diào)有所幫助。


本文題目:ASP.NET異步回調(diào)淺析
網(wǎng)頁(yè)路徑:http://www.5511xx.com/article/cdigeop.html