·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> ASP.NET2.0中用ICallbackEventHandler实现客户端与服务器端异步交互

ASP.NET2.0中用ICallbackEventHandler实现客户端与服务器端异步交互

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

页面代码:
<script type="text/javascript">
      function ReceiveServerData(rValue)
      {
         alert(rValue);
      }
 </script>
<input id="Button1" type="button" value="button" onclick ="CallServer('Client')" />
服务端代码:
public partial class back2 : System.Web.UI.Page,System .Web .UI .ICallbackEventHandler
{
    public string CallBackValue = null;
    PRotected void Page_Load(object sender, EventArgs e)
    {

    }
     // 注册脚本到前台页面
    protected void Page_PreRender(object sender, EventArgs e)
    {
        RegClientScript();
    }
    // Javascript函数(服务器端事件的客户端回调)
    protected void RegClientScript()
    {
       ClientScriptManager cs = Page.ClientScript;
       string jstxt=@"
                  function CallServer(msgid)
                  {
                     " + cs.GetCallbackEventReference(this, "msgid", "ReceiveServerData", null) + @";
                  }";
       cs.RegisterStartupScript(this.GetType(), "callserver", jstxt, true);
    }
    //ICallbackEventHandler接口
    //把值传到前台
    string ICallbackEventHandler.GetCallbackResult()
    {
        return CallBackValue + ",Server";
    }

    //按受前台的参数
    void ICallbackEventHandler.RaiseCallbackEvent(string eventArgument)
    {
        this.CallBackValue = eventArgument;
    }
}
http://www.cnblogs.com/chy710/archive/2006/12/26/604118.html