2011-06-08 64 views
2

我有一个相当大的树形网格的客户端(总树大小为3000,但一个节点有1500个子节点)。它是一个邻接模型树,我只加载需要的数据(当我展开每个节点时Ajax调用)。提高JQGrid树网格性能

性能是扩大大的节点,但每当我崩溃的大节点我得到一个警告,指出如果没有许多孩子甚至节点伟大:

Stop running this script? 

A Script on this page is causing your web browser to run slowly. If it continues to run, your computer might become unresponsive. 

它不是检索是数据慢,但是是树的客户端操纵。

1)我可以应用哪些设置来提高性能?我试过gridview = true,但我认为这对树格没有任何影响。

2)rowNum是否对树形网格有影响?

3)我使用v3.7.2 - 将升级到v4有什么区别?

4)如果我无法顺利运行,可以推荐另一个树形网格吗?我使用的jqGrid在整个我们的应用非常成功,将是一个可悲的大熊猫,如果我必须找到另一种解决:(

干杯!

回答

3

首先你应该从升级版本3.7.2到版本4.0.0。在4.0版本的jqGrid中,树形网格发生了变化,支持gridview:true这对于大量行/节点的情况非常重要。

如果升级后的性能仍然不够,应该发布完整的网格定义并发布可以下载测试JSON/XML数据的URL,然后可以调试该问题, e建议。

+0

感谢Oleg - 做了2件事情来提高性能:升级到版本4并且使用了gridview:true,并且原始行在网格数据中用javascript返回(打开选定行的弹出窗口),所以我将这些数据移出网格 – woggles 2011-06-08 20:07:31

+0

@ woggles:不客气! – Oleg 2011-06-08 21:07:06

+0

今天早上我再次重温性能问题。给我的问题节点有大约700条记录(节点的JSON数据:http://pastebin.com/XrMxuiFR)。请注意,我们有ID的GUID。 Chrome的性能很好,但IE仍然出现错误(可以通过修改注册表设置http://support.microsoft.com/kb/175500来删除错误)。有没有可能去掉不需要的样式来提高性能?谢谢 – woggles 2011-12-28 12:02:27

1

尝试仅使用那些适用于该网格的链接和样式表。不必要的链接和样式表会影响性能,并可能是冲突的原因。这将增加文件加载的时间以及影响带宽。