2015-10-26 107 views
2

我想在asp.net web窗体中实现DataTables.net 1.10.9(http://datatables.net)。它的工作很好,但数据量很少,但会延迟渲染并在网页上应用分页。Datatables.net缓慢渲染和应用分页

我在运行时使用Repeater控件并将其绑定到页面后面的代码中。

加载页面时,我可以看到表格中的所有数据,但页面仍在处理中,并在5-8秒后延迟页面和主题应用于表格。

是否有任何解决方法来减少延误时间? (不使用服务器端webservice)

到目前为止,我尝试使用“deferRender”:真实但没有运气。

工作在Firefox和谷歌Chrome,但延迟还好是在IE9

+1

多少行是在表中时,它的呈现? – user1620220

+0

2K ............... – user1263981

+1

貌似有使用的innerHTML 当IE浏览器的问题 http://love2dev.com/#!article/Slow-Rendering-with-Large - 在IE-9-amp-8表 - http://stackoverflow.com/questions/2406192/how-to-speed-up-the-reading-of-innerhtml-in-ie8 – user1263981

回答

0

SOLUTION

使用deferRender推迟不可见的行渲染初始化的额外的速度。

请注意,这将仅提高Ajax或JavaScript源数据(即使用ajaxdata选项)时的性能。

var table = $('#example').DataTable({ 
    ajax: 'https://api.myjson.com/bins/qgcu', 
    deferRender: true 
}); 

如果您使用的是HTML源数据,请考虑编写一个脚本,该脚本将生成JSON数据。然后,您可以使用ajax选项指定脚本的路径,并使用deferRender: true(如上所示)来提高性能。

DEMO

this jsFiddle代码和演示。

LINKS

+0

我试过这个,但没有运气 – user1263981

+0

@ user1263981,请编辑您的问题并陈述您迄今为止已经尝试的DataTables初始化代码和相应的HTML标记。 –

+0

我没有使用问题中提到的ajax或服务器端处理。 – user1263981