首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RadAjaxManager不会更新雷达网格

RadAjaxManager不会更新雷达网格
EN

Stack Overflow用户
提问于 2012-09-24 10:21:13
回答 2查看 1.9K关注 0票数 2

我有一个雷达格,当一个复选框列表被更改时,它应该更新(在一个由AutoPostBack触发的选定事件上实现),但是当我在列表中选中一个复选框时,RadAjaxLoading图片将正确地显示加载图像,然而,它永远不会离开并重新显示网格。根据我的web浏览器中的控制台错误,我一直收到以下错误:

Uncaught :对象没有方法'_destroyTree'

这就是我如何设置我的经理,如果这有帮助的话:

代码语言:javascript
复制
<telerik:RadAjaxManager ID="RadAjaxManagerNotesView" runat="server">
    <AjaxSettings>
        <telerik:AjaxSetting AjaxControlID="RadGridNotes">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadGridNotes" LoadingPanelID="RadAjaxLoadingPanel" />
            </UpdatedControls>
        </telerik:AjaxSetting>
        <telerik:AjaxSetting AjaxControlID="CheckBoxListCategories">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadGridNotes" 
                    LoadingPanelID="RadAjaxLoadingPanel" />
            </UpdatedControls>
        </telerik:AjaxSetting>
    </AjaxSettings>
</telerik:RadAjaxManager>

有人能帮我解决这个错误吗?RadGrid将永远不会在当前时重新显示。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-25 09:44:10

发现该错误与.NET 4.0不兼容,而telerik(2009)的旧版本通过在单独的JavaScript文件中使用下面的修补程序并将其包括在母版页脚中,成功地绕过了该错误。

default.zip

票数 4
EN

Stack Overflow用户

发布于 2013-11-14 13:12:44

这个脚本解决了我的问题:

代码语言:javascript
复制
function _destroyTree2(element) {
    if (element.nodeType === 1) {
        var childNodes = element.childNodes;
        for (var i = childNodes.length - 1; i >= 0; i--) {
            var node = childNodes[i];
            if (node.nodeType === 1) {
                if (node.dispose && typeof (node.dispose) === "function") {
                    node.dispose();
                }
                else if (node.control && typeof (node.control.dispose) === "function") {
                    node.control.dispose();
                }
                var behaviors = Sys.UI.Behavior.getBehaviors(node);
                for (var j = behaviors.length - 1; j >= 0; j--) {
                    behaviors[j].dispose();
                }
                this._destroyTree(node);
            }
        }
    }
}

Sys.WebForms.PageRequestManager.getInstance()._destroyTree = _destroyTree2

把它放在页面的末尾。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12563046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档