Kendo UI 网格 - throw Error(kendo.format("Cannot call method '0' of 1 before it is initialized&qu

Posted

技术标签:

【中文标题】Kendo UI 网格 - throw Error(kendo.format("Cannot call method \'0\' of 1 before it is initialized",t,r))【英文标题】:Kendo UI grid - throw Error(kendo.format("Cannot call method '0' of 1 before it is initialized",t,r))Kendo UI 网格 - throw Error(kendo.format("Cannot call method '0' of 1 before it is initialized",t,r)) 【发布时间】:2013-02-03 19:32:55 【问题描述】:

我有tabstrip 有两个标签。在每个选项卡上,我都有一个带有分页的网格。 我的网格配置在客户端。当我在选项卡之间快速切换时,我会从 javascript 中得到异常:

"throw Error(kendo.format("Cannot call method '0' of 1 before it is initialized",t,r))"

以下部分用于网格中的分页配置:

[...]

pageable: 
                    pageSizes: [5, 10, 20],
                    input: true
           ,
[...]

您知道如何防止此错误吗?

【问题讨论】:

不是很清楚问题是什么。更多代码或 jsbin/jsfiddle 演示将帮助我们更好地了解您的案例。 看起来可分页初始化发生错误。当我打开 pagaable 时就可以了。我通过ajax加载内容。当内容加载成功时,我会在客户端初始化并配置剑道网格控制。 【参考方案1】:

我遇到了同样的问题,是的,有一个解决方法,基本上你只需要在移动到新标签之前破坏网格......

解决这个问题的最好方法是使用这个函数,同时会寻找剑道网格并摧毁它们

$("[kendo-grid]").each(function(idx,kGrid)
                                var dataObj=$(kGrid).data();
                                for(mData in dataObj)
                                
                                    if(typeOf dataObj[mData] != "string")
                                    
                                        if("destroy" in dataObj[mData])
                                        
                                            dataObj[mData].destroy();
                                        
                                    
                                
                            )

希望这会有所帮助...

【讨论】:

【参考方案2】:

不清楚确切的问题是什么...看起来像同步问题。

尝试使用 async: false 加载内容

【讨论】:

这应该是评论而不是答案

以上是关于Kendo UI 网格 - throw Error(kendo.format("Cannot call method '0' of 1 before it is initialized&qu的主要内容,如果未能解决你的问题,请参考以下文章

在 kendo-ui 网格中显示/隐藏列后,有啥方法可以自动调整网格列宽?

Kendo UI - 网格分页(服务器端)

Kendo UI 网格复选框列

弹出窗口在 Kendo UI 网格中的工作原理以及如何在 MVC4 的 Kendo UI ajax 网格中将控件带入弹出窗口

如何在 kendo ui 网格中选择关键行

如何刷新 Kendo UI 网格