代码之家  ›  专栏  ›  技术社区  ›  dev.e.loper

WebForm\u DoCallback定义

  •  10
  • dev.e.loper  · 技术社区  · 14 年前

    对WebForm\u DoCallback函数的MSDN有简单的解释吗?

    http://msdn.microsoft.com/en-us/magazine/cc163878.aspx 其中包括WebForm\u DoCallback的实现,但不能很好地解释参数本身。

    function WebForm_DoCallback(eventTarget, eventArgument, 
    eventCallback, context, errorCallback) 
    

    比如,它到底期望什么作为“事件目标”? 等。。。

    3 回复  |  直到 14 年前
        1
  •  10
  •   Stu Pegg    12 年前

    WebForm\u DoCallback似乎是 GetCallbackEventReference . 它是用相同的参数生成的,如下所示:

    :处理客户机的服务器控件的名称 ICallbackEventHandler接口 并提供一个RaiseCallbackEvent 方法。

    论点 RaiseCallbackEvent方法。

    客户端回调 服务器事件成功的结果。

    :之前在客户端上计算的客户端脚本 正在启动回调。结果 脚本被传递回 客户端事件处理程序。

    客户端错误回调 :接收的客户端事件处理程序的名称 服务器事件处理程序。

    :true异步执行回调;假到

    客户端回调 客户端错误回调

    function clientCallback(returnmessage, context) {}
    

    在哪里? 是来自服务器的响应(或错误)和 以前传入过。

    MSDN: ClientScriptManager.GetCallbackEventReference Method

    MSDN Magazine: Implications of Script Callbacks in ASP.NET

    ESRI Developer Network: Page Postbacks and Client Callbacks

        2
  •  5
  •   Heroius    13 年前

    我们可以看到这样的东西--

    WebForm_DoCallback('__Page',parameter,callBack,context,null,false);
    

    在页面资源文件中。 “parameter”似乎是一个值类型(string),而context是一个ref类型。 无论如何,“上下文”很少被使用。 “参数”只能是一个字符串,因此您可能需要将多个值组合到其中,然后在服务器上将其分离。 当数据传输到服务器端时,相对类(作为接口的子类) ICallbackEventHandler “)instant,并调用处理程序方法:

    public void RaiseCallbackEvent(string eventArgument)
    {
       //deal with the eventArgument( the "parameter")        
    }
    

    之后,另一个方法继续并在响应中返回一个字符串。。

    public string GetCallbackResult()
    {
        //return command;
    }
    

    最后,异步进程引发回调函数(“ “在这种情况下),应该有2个输入参数:

    function callBack(returnedStuff, context) {......}
    

    这就是它的工作原理

        3
  •  0
  •   Brian Mains    14 年前

    你需要在什么背景下使用这个?该字符串由ClientScriptManager中的以下方法调用生成: http://msdn.microsoft.com/en-us/library/ms153110%28v=VS.100%29.aspx

    你可以用这个来产生上面的语句,而不必知道细节。