2011-08-30 16 views
0

使用ajax如何从包含超过50000条记录的xml获取服务器servlet的响应。如果我尝试在用户界面中显示该记录,它非常缓慢并且冻结如何避免它。JavaScript从ajax响应中载入大量数据

+7

不要一次抓取多条记录。您的用户最初是否真的需要查看50,000条记录?考虑分页。 –

+0

@ rlb.usa谢谢你,但我如何加载前100个记录和下100个记录下一个.....等等如何可能的任何例子...作为学习者,我需要一些简单的例子.... – mca

回答

0

jsonp比ajax快得多。原因是大多数浏览器解析javascript标签确实很快。看到这里,http://devlog.info/2010/03/10/cross-domain-ajax/上手(方案二与实施JSONP交易。

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

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

编辑 - 使用寻呼,将需要创建一个支持某种像startsize API领域的服务器端点所以,你会怎么做

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

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

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

你的UI将会有一个表,用某种“下一步”和“上一个”页面按钮

+0

亲爱的hvgotcodes任何例如,如果我第一次有50000条记录,而加载1-500下一个500-1000 ....直到50000我需要一些简单的例子 – mca

+0

我试过后,我回复你谢谢Mr.hvgotcodes – mca

+0

谢谢它的工作...人 – mca

1

正如在其他反应已经表明,你需要页面数据。这可能意味着服务器端也必须适应支持分页。

这个例子来自非常优秀的Datatables JQuery插件也显示了实现分页的服务器代码。虽然该代码使用PHP,但研究该代码以理解分页概念可能是一个好主意。

+0

+1即时可用性,用户不必修改他们的服务器 –