Javascript从ajax响应中加载大量数据

时间:2011-08-30 17:22:47

标签: javascript ajax

使用ajax如何从服务器servlet获取包含超过50000条记录的xml的响应。如果我尝试在用户界面中显示记录它是非常缓慢和冻结如何避免它。???

2 个答案:

答案 0 :(得分:1)

正如其他回复中所述,您需要分页数据。这可能意味着服务器端也必须适应支持分页。

来自非常出色的Datatables JQuery插件的示例还显示了实现分页的服务器代码。虽然该代码在PHP中,但研究该代码以理解分页的概念可能是个好主意。

答案 1 :(得分:0)

jsonp比ajax快得多。原因是大多数浏览器非常快速地解析javascript标签。请参阅此处http://devlog.info/2010/03/10/cross-domain-ajax/以开始使用(解决方案2,它涉及实现jsonp。

这样做的缺点是您需要修改服务器。

您还可以加载较少的记录,或使用分页。

编辑 - 要使用分页,您需要创建一个支持某种api字段的服务器端点,例如startsize。所以你会这样做

http://www.example.com/data?start=0&size=100

这意味着服务器应该从第一个开始返回100个数据元素。如果你从0开始改为1000,它将从第1000个元素开始返回100个元素。

它只是一个简单的ajax调用。您做的唯一不同的事情是通过将这些参数添加到您的请求中,告诉服务器您想要多少数据,从哪里开始。

您的用户界面将有一个包含某种“下一页”和“上一页”按钮的表格