Datatables.net 渲染和应用分页速度慢
Posted
技术标签:
【中文标题】Datatables.net 渲染和应用分页速度慢【英文标题】:Datatables.net slow in rendering and applying paging 【发布时间】:2016-01-25 23:15:03 【问题描述】:我正在尝试在 asp.net 网络表单中实现 DataTables.net 1.10.9 (http://datatables.net)。它适用于少量数据,但会延迟渲染和在网页上应用分页。
我正在使用Repeater 控件并在运行时将其绑定到页面后面的代码中。
加载页面后,我可以看到表格中的所有数据,但页面仍在处理中,延迟 5-8 秒后分页和主题应用于表格。
有什么办法可以减少渲染时间吗? (不使用服务器端网络服务)
到目前为止,我已经尝试过使用“deferRender”:是的,但没有运气。
在 Firefox 和 google chrome 中工作正常,但在 IE9 中出现延迟
【问题讨论】:
渲染时表格中有多少行? 使用innerhtml时IE好像有问题love2dev.com/#!article/…***.com/questions/2406192/… 【参考方案1】:解决方案
使用deferRender
延迟不可见行的呈现,以加快初始化速度。
请注意,这只会提高 Ajax 或 javascript 来源数据的性能(即使用 ajax
或 data
选项时)。
var table = $('#example').DataTable(
ajax: 'https://api.myjson.com/bins/qgcu',
deferRender: true
);
如果您使用 HTML 源数据,请考虑编写一个脚本,该脚本将使用数据生成 JSON。然后您可以使用ajax
选项指定脚本的路径并使用deferRender: true
如上所示来提高性能。
演示
有关代码和演示,请参阅 this jsFiddle。
Deferred rendering for speed链接
【讨论】:
@user1263981,请编辑您的问题并说明您迄今为止尝试过的内容以及 DataTables 初始化代码和相应的 HTML 标记。 我没有使用问题中提到的 ajax 或服务器端处理。 @user1263981,问题并不清楚。所以你所有的数据都在 HTML 中,对吧? 带有 html 表的中继器控件在 asp.net 页面中,我在运行时通过数据源(.net 中的数据表)绑定中继器控件。 我已经在 firefox 和 google chrome 中测试过,它工作正常,但在 IE9 中有延迟。以上是关于Datatables.net 渲染和应用分页速度慢的主要内容,如果未能解决你的问题,请参考以下文章