对象不支持属性或方法«_get_eventHandlerList»

Object does not support property or method « _get_eventHandlerList »

本文关键字:get eventHandlerList #187 不支持 #171 方法 对象 属性      更新时间:2023-09-26

我在尝试重新绑定网格时出错:(

父页面(网格所在的位置)

function refreshGrid(arg) {
    if (!arg) {
        $find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("Rebind");
    }
} 

<telerik:RadWindowManager ID="RadWindowManager1" runat="server" EnableShadow="true">
    <Windows>
        <telerik:RadWindow ID="RadWindow1" runat="server" Width="700px" Height="500px" Title="Details du ticket"
            Skin="WebBlue" Behaviors="Close, Move" Modal="true">
        </telerik:RadWindow>
    </Windows>
</telerik:RadWindowManager>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" ClientIDMode="AutoID">
    <AjaxSettings>
        <telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadGrid1" />
            </UpdatedControls>
        </telerik:AjaxSetting>
    </AjaxSettings>
</telerik:RadAjaxManager>

.CS:

    protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
    {
        if (e.Argument == "Rebind")
        {
            RadGrid1.MasterTableView.SortExpressions.Clear();
            RadGrid1.MasterTableView.GroupByExpressions.Clear();
            RadGrid1.Rebind();
        }
    }  

窗口中的JS函数(当我关闭它时,我希望刷新父页面中的网格)

function CloseDialog(args) {
    GetRadWindow().close();
    GetRadWindow().BrowserWindow.refreshGrid(args); 
    return true;

}

与其做所有这些,不如试试这个简单的例子:

radWindow中,您将获得一个名为OnClientClose的客户端事件,您可以调用该事件并轻松地重新绑定网格。看看下面我做了什么:

<telerik:RadWindow runat="server" Behaviors="Maximize,Close,Move" ID="editorWindow"
    VisibleStatusbar="false" Width="800px" ReloadOnShow="true" ShowContentDuringLoad="false"
    OnClientClose="OnWindowClose" Modal="true" Height="500px" />

这是JS函数:

function OnWindowClose(sender, eventArgs) {
    var MasterTable = gridID.get_masterTableView();
    MasterTable.rebind();
}

注意:在父页的pageLoad上,我分配了类似于此var gridID = $find('<%=radGrid.ClientID%>')gridID。您也可以直接在OnWindowClose函数中找到/获取网格,因为我的场景有点不同。