站长工具权重查询,站长之家ping检测,wordpress自带301,自营店网站建设近日#xff0c;由于需要#xff0c;我写了一个webcontrol,并在实现了ICallbackEventHandler,目的是根据传进来的参数进行逻辑处理#xff0c;然后返回值。我下面的例子目的是从1到5调用异步函数#xff0c;然后在回调函数将1到5这几个数值相加。但是#xff0c;由于调用异…近日由于需要我写了一个webcontrol,并在实现了ICallbackEventHandler,目的是根据传进来的参数进行逻辑处理然后返回值。我下面的例子目的是从1到5调用异步函数然后在回调函数将1到5这几个数值相加。但是由于调用异步函数的过程没有被阻塞因此值一直为0.特别注意我在使用this.Page.ClientScript.GetCallbackEventReference(this, argument, callbackFunc, context,false)的时候最后一个参数的true或false都测试过也就是同步异步都不行。由于比较急且个人弄了很久没个头绪因此斗胆发到首页来请各位高人们帮忙参谋参谋。。。拜谢先。 猛击这里下载源码-/Files/McJeremy/AjaxCountTest.rar 源码是用vs2005sp1创建的ASP.NET 网站类型 下面是代码 1 namespace Test 2 { 3 /// summary 4 /// AjaxControl 的摘要说明 5 /// /summary 6 public class AjaxControl : WebControl, ICallbackEventHandler 7 { 8 public AjaxControl() 9 {10 }11 12 protected override void Render(HtmlTextWriter writer)13 {14 writer.Write(Test tttt);15 writer.Write(GetAjaxFunction());16 }17 //生成异步函数18 private string GetAjaxFunction()19 {20 System.Text.StringBuilder sb new System.Text.StringBuilder();21 sb.Append(script type\text/javascript\);22 sb.Append(function callServer(argument,context){);23 sb.Append(this.Page.ClientScript.GetCallbackEventReference(this, argument, callbackFunc, context,false));24 sb.Append(}/script);25 return sb.ToString();26 }27 28 #region ICallbackEventHandler 成员29 30 private string rValue;31 32 public string GetCallbackResult()33 {34 return rValue;35 }36 37 public void RaiseCallbackEvent(string eventArgument)38 {39 //此处不作处理直接返回40 rValue eventArgument;41 }42 43 #endregion44 }45 } JS文件 1 var envir{count:0}; 2 function callbackFunc(data,context) 3 { 4 envir.countparseInt(data,10); 5 } 6 7 window.onloadfunction() 8 { 9 //循环调用异步函数10 for(var i1;i5;i)11 {12 callServer(i,);13 }14 15 //此处不等callServer执行完成后就执行了。导致envir.count为016 //而按设想envir.count的值应该是1234 1017 alert(envir.count);18 } 最终调用的default.aspx: 1 % Page LanguageC# AutoEventWireuptrue CodeFileDefault.aspx.cs Inherits_Default % 2 3 % Register AssemblyClassLibrary NamespaceTest TagPrefixcc1 % 4 5 !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd 6 7 html xmlnshttp://www.w3.org/1999/xhtml 8 head runatserver 9 title无标题页/title10 script typetext/javascript srcJScript.js11 12 /script13 /head14 body15 form idform1 runatserver16 div17 cc1:AjaxControl IDAjaxControl1 runatserver / 18 /div19 /form20 /body21 /html22 转载于:https://www.cnblogs.com/McJeremy/archive/2010/06/18/1759920.html