0


如何在 add_endRequest 中获取导致回发的元素的 ID?
示例
//连接结束请求过程,

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(requestComplete_Handler)

    //will be called after the async request completes.
    function requestComplete_Handler(sender, args)
    {
        var panel = sender._postBackSettings.sourceElement.id;
        switch (panel)
        {
            case "<%=upSubAccount.ClientID %>":
                __doPostBack('<%=upAllocationChart.ClientID%>');
                break;
            case "<%=upAllocationChart.ClientID%>" :   
               __doPostBack('<%=upTotal.ClientID %>');
            break;
        }
    }

虽然这有效,但不是每次都
sender._postBackSettings.sourceElement.id;
谢谢。

4

1 回答 1

0

您必须使用我在回答您之前的问题时建议的相同方法。

第一个参数是事件目标。
这是触发事件的元素。
但是,您可以轻松地将其存储在您自己的变量中并稍后访问它。
您只需要将 替换为__doPostBack您自己的功能。

var orignalDoPostback = __doPostBack;
var lastEventTarget = "";
var lastEventArgument = "";
__doPostBack = function(eventTarget, eventArgument)
{
   lastEventTarget = eventTarget;
   lastEventArgument = eventArgument;
   orignalDoPostback(eventTarget, eventArgument);
}

然后,您可以根据需要使用它。

于 2013-03-26T05:13:54.040 回答