zoukankan      html  css  js  c++  java
  • ASP.NET2.0 ClientCallback脚本回调 [转]

    现在AJAX很火,不要忘记ASP.NET2.0自带的ClientCallback,也是非常好用!
    现在我来讲一讲ClientCallback简单实现:
    1.首先在aspx.cs文件Page类增加ICallbackEventHandler接口

    public partial class _Default : System.Web.UI.Page, ICallbackEventHandler 

    ICallbackEventHandler接口在ClientCallback非常重要的,我们来看一下ICallbackEventHandler接口到底有什么东西:
        名称                                           说明  
      
    string GetCallbackResult()                              返回以控件为目标的回调事件的结果。  
      
    void RaiseCallbackEvent(string eventArgument)          处理以控件为目标的回调事件。eventArgument参数:表示要传递到事件处理程序的事件参数。 


    2.要实现脚本回调当然要写脚本:

    //触发事件js
    string cbref = Page.ClientScript.GetCallbackEventReference(this"arg""JSCallback""context");
                
    string cbScr = string.Format("function UseCallBack(arg, context) {{ {0}; }} ", cbref);
                Page.ClientScript.RegisterClientScriptBlock(
    this.GetType(), "UseCallBack", cbScr, true);
    这段代码是通过代码RegisterClientScriptBlock设置触发脚本回调事件函数、回调函数、异常处理函数。UseCallBack(arg, context)函数: 触发服务端事件函数; arg是要传递到事件处理程序的事件参数,context是上下文参数(很少用到,可以在下面JSCallback回调函数中得到此值,但我在服务端得不到此值,请高手解答)


     
    //回调js
    string context1 = "<script type=\"text/javascript\">function JSCallback(arg, context) { document.forms[0].TextBox1.value = arg; window.alert(context); }</script>";
    Page.ClientScript.RegisterClientScriptBlock(
    this.GetType(), "JSCallback", context1);
    这段代码是通过代码RegisterClientScriptBlock注册回调后的js,也可以直接写到网页里。回调js的用处:

    JSCallback(arg, context) 函数: js里JSCallback函数是处理服务端返回的参数(例如:返回xml参数,经过处理后显示下拉框里)。

    ClientCallback运行流程:
    当页面执行UseCallBack(arg, context),就自动到服务端运行RaiseCallbackEvent(
    string eventArgument),然后是GetCallbackResult(),最后执行页面JSCallback(arg, context) 函数。


    3.选择一个触发事件的条件:
    就是让页面执行触发服务端事件函数。例如:Button2.Attributes.Add(
    "onclick""UseCallBack('GYF','GYF2');");


    哈哈,这样实现了无刷新了,很简单吧!本人写作水平很有限。
    详细看代码:代码下载 
  • 相关阅读:
    使用事物码SAT检测SAP CRM中间件的传输性能
    显示SAP CRM Product hierarchy的一个小工具
    如何使用SAP CRM中间件从ERP往CRM下载Service Master
    SAP CL_CRM_BOL_ENTITY单元测试方法
    SAP CRM错误消息 Specify at least one number for the business partner
    Java注解@Autowired的工作原理
    Spring里component-scan的工作原理
    Spring框架里解析配置文件的准确位置
    SAP CRM状态字段下拉列表里数据的填充原理
    用户自定义协议client/server代码示例
  • 原文地址:https://www.cnblogs.com/kokoliu/p/656263.html
Copyright © 2011-2022 走看看