需要有关AJAX和Jquery的建议

时间:2011-08-24 12:56:05

标签: javascript jquery html ajax

我有一种情况,我有3个多选,比如level1,level2和level3 现在,level2取决于在level1中选择的选项,类似level3取决于在level2中选择的选项 我的问题是,最好是一次性获取所有数据,即页面加载并使用jquery过滤此数据,具体取决于用户选择的选项或者我应该向数据库发出基于ajax的请求以获取数据每次用户选择选项时,下一个多选。 哪种方法会更好??

7 个答案:

答案 0 :(得分:1)

我认为你应该进行ajax调用,以便在每次选择时从数据库中获取数据。

答案 1 :(得分:0)

Ajax,取决于您的服务器速度,是一种非常快速的技术,因为它是异步的(不需要回发),并且因为数据的传输方式。 我会说这取决于记录的数量。您应该在此处使用您的程序员标准。我的意思是,如果组合有很多选项而且服务器很慢或者它位于世界的另一端,那么第一次就把它全部拿出来。无论哪种方式,您都可以继续在组合更改事件上调用ajax函数。

使用您的标准 -

答案 2 :(得分:0)

任何时候您可以选择将多个请求合并为一个,那么这是最佳选择。每个请求都使用更多资源,这可能是不必要的。当然,这完全取决于您正在处理的数据类型,因为可能无法一次性获取所有可用选项,或者可能只是需要加载太多额外数据。

答案 3 :(得分:0)

在某种程度上,这取决于您所谈论的数据量。

对于相当小的金额 - 几KB的价值 - 你应该绝对一次下载它。在客户端重新组织它比等待AJAX​​查询将其降低更快,并且您在服务器上的命中次数会更少 - 特别是如果用户可能正在点击并连续发送多个AJAX请求。 / p>

如果你有一个主要的应用程序需要几个MB的数据进行单次下载,那么较小的AJAX查询可能就是这样。

在两者之间,它是一个判断调用,但我总是倾向于单个下载和客户端排序。任何能够最大限度地减少或消除新请求和响应导致的延迟的事情都是好的。

答案 4 :(得分:0)

我认为您应该对数据库执行基于ajax的请求,因为如果需要,调试和操作数据会更容易。

答案 5 :(得分:0)

我认为你必须使用 Jquery 你应该在multiselect中的每个选择后加载数据。 性能方面,它不是一个很好的方法来加载页面加载的所有数据..

答案 6 :(得分:0)

我的答案是它取决于显示的数据量。

如果level1,level2,level3中的数据量相对较小 - 您将从检索所有数据中受益:您将通过减少大量请求将负载保存到服务器。这将使你编写一些javascript,但填充列表将是闪电般快。

另一方面,如果您的树有大量数据(即100个1级项目,每个项目有100个2级项目,每个项目有100个3级项目),您最终将转移100万个项目(这个用例的巨大开销),这种情况的好解决方案是为每个列表单独的AJAX调用。