【发布时间】:2009-02-23 21:30:23
【问题描述】:
我正在寻找不同的方法来在具有 500 - 1000 行的 gridview 中呈现数据。网格应支持键盘导航。我编写了 jquery 函数来处理它。但是当我将 500 行加载到网格中时,浏览器会冻结。我不确定我是否对 jquery 做错了什么。我可以查看 jquery,但我想知道在网格中有 500 行并期望良好的性能是否可行。一种选择是使用分页。我想听听我可能遗漏的任何其他想法。
请告诉我。
谢谢, 斯里达尔。
【问题讨论】:
我正在寻找不同的方法来在具有 500 - 1000 行的 gridview 中呈现数据。网格应支持键盘导航。我编写了 jquery 函数来处理它。但是当我将 500 行加载到网格中时,浏览器会冻结。我不确定我是否对 jquery 做错了什么。我可以查看 jquery,但我想知道在网格中有 500 行并期望良好的性能是否可行。一种选择是使用分页。我想听听我可能遗漏的任何其他想法。
请告诉我。
谢谢, 斯里达尔。
【问题讨论】:
尽量减少 HTML 的大小,使用 CSS 类而不是大量的内联样式和标记。通过这种方式,您应该会看到解析和渲染时间的显着加快(500 行并不多)。
【讨论】:
尝试使用Repeater,而不是GridView。这至少可以让您完全控制正在渲染的内容。 GridViews 在 html、ViewState 和包含的 javascript 中为页面添加了很多臃肿,而且通常是矫枉过正。
如果您对 PostBacks 没问题,而不是使用一些自定义 ajax(不是 AJAX.Net)进行分页,您可以将 Repeater 绑定到一个 PagedDataSource 对象,该对象可以绑定到 DataSet、DataTable 或其他任何东西您正在使用的集合。
我希望这会有所帮助!
此外,一个 GridView 应该能够处理 500 行而不会使浏览器冻结。你能发布你的 jQuery 吗?
【讨论】: