我应该使用AJAX还是事先获取所有数据

时间:2010-06-14 20:07:03

标签: php javascript ajax

我有一个网络应用,我需要根据另一个下拉列表动态更改下拉列表。

我有两个选择: 事先用PHP获取所有数据,然后使用Javascript“管理”它。 或者通过AJAX获取用户想要的数据。

问题是,默认情况下页面会加载所有数据,用户以后可以选择子类别来缩小下拉列表。

两个选项中哪一个更好(更快,资源更少)?

3 个答案:

答案 0 :(得分:2)

资源消耗较少的选项显然是AJAX,因为您只是传输所需的信息,而不是更多。

但是,如果客户端的延迟很高(不得不等待连接在下拉选项之间获取数据),AJAX可以降低页面的响应速度。

所以:如果延迟是一个更大的问题,请预先加载所有内容,如果带宽问题更多,请使用AJAX。

答案 1 :(得分:1)

这取决于你的主要目标:

1。 使用ajax,您将能够在不刷新页面的情况下获得所需数据,并根据需要获取数据,从而使应用程序运行得更快... 它还允许您在一个独立文件上有一个代码块,以便在需要时“被ajax调用”,从而在您的应用程序中使用该代码而不必不断加载它!

2。 使用php,您必须事先准备好数据,从而编写更多代码,从而使您的应用程序更慢......

除非我们讨论的是大量数据,否则性能不会是用户会看到的。

总结说,ajax是谈论性能和代码有效性的最佳方式!

Ps:个人意见当然!

答案 2 :(得分:0)

如果有相当多的可能选择选项,我会使用AJAX动态获取它们。如果您只有一小组选择选项,则值得考虑将它们嵌入页面中。嵌入页面意味着没有延迟,也没有更快捷的界面。

但是,如前所述,如果您有大量选项,或者选项可能会动态更改,则动态检索非常有用。

与任何ajax请求一样,请记住在请求正在进行时显示某种形式的视觉反馈。