我刚开始对表格数据使用datatables (java script),因为有了js,我才能使用搜索、每页多少行、排序和分页等功能。在使用js之前,我只是简单地在表中显示数据(使用Ajax进行分页),但无法使用上述功能(在这种情况下性能很好)。现在,我使用jquery.dataTables.js和jquery.js文件作为表结构。但问题是,这严重影响了网站的性能,最初所有的脚本都只在一个页面下,然后firefox给出了“无响应脚本”的警告消息,然后我只是为表创建了单独的文件,然后我就不再收到这个消息,但性能变差了。我所做的是,从API获取数据,将其存储到数据库中,然后显示它,但是js花费了很多时间,有时它根本不显示有数千个数据的表。
I really need to use js for table but can't afford this poor performance. Has somebody got this problem before? waiting for valuable advice.发布于 2010-09-25 16:19:38
在Javascript中,您无法有效地存储和操作数千行数据。像MySQL这样的数据库引擎有各种各样的gubbins (索引、缓存)来加速搜索(查询)。Javascript没有这些功能,您可以根据需要优化存储和搜索算法的方法,但您永远无法实现有效的解决方案。
分页应该在服务器上。服务器向您发送30行数据,当您需要更多数据时,您可以从服务器请求更多数据;通常是以新页面加载的形式将当前内容替换为另一组结果,或者以AJAX请求的形式将新内容追加/预先添加到现有的。
当您想要搜索数据时,使用Javascript可以搜索页面上的内容(大约10行),但是要搜索整个数据集,请将查询发送到服务器,并让数据库引擎来完成这项工作。
https://stackoverflow.com/questions/3793001
复制相似问题