我该怎么用? AJAX还是jQuery?

时间:2011-03-04 09:07:27

标签: jquery ajax

我有3个ASP列表框。显示在第二个列表框中的值列表取决于第一个列表框中的选定项目,第三个框中显示的值将根据第二个框中的选择显示。所有这些值都将从数据库中检索出来,我想知道是否更好地使用AJAX或jQuery。

我已经阅读了两者之间的差异,但我仍然感到困惑。请帮我解释这个特例。

10 个答案:

答案 0 :(得分:9)

Ajax的意思是“在不使用JavaScript离开页面的情况下向服务器发送数据和/或从服务器接收数据”

jQuery是一个JavaScript库。

你不能在之间选择,因为这就像选择“旅行”和“波音”(波音制造的产品可以帮助你旅行。其他公司也这样做。你可以不用旅行任何公司生产的产品。波音公司生产非旅行相关产品。

如果您有大量数据(即将所有内容加载到前面的页面中太多),那么您将需要使用Ajax来获取它。如果您没有那么多数据,您可以将它嵌入到您的脚本中而不用担心使用Ajax技术发出HTTP请求(这会在加载时产生成本,但会使脚本更加简单)。

如果你想根据在前一个中选择的数据更改select元素中的数据,那么JavaScript库可以为你节省一些麻烦,但可能不值得增加页面权重(尽管如果你用JS做很多事情)然后努力将加起来,直到从一开始就值得使用库。

如果你想使用Ajax,那么有足够的浏览器差异,JS库可能是值得的。随着库的发展,jQuery是合理且受欢迎的。

答案 1 :(得分:4)

它们是不同的(尽管是相关的)概念。 jQuery是一个丰富的JavaScript库,它提供了许多其他的AJAX支持。

AJAX本身主要是用于动态连接到Web服务器的各种JavaScript技术的通用术语,无需加载多个页面。在更狭义的意义上,它指的是使用XmlHttpRequest对象通过JavaScript动态地与Web服务器交互。

答案 2 :(得分:4)

羽毛还是铅?

它不是 - 或者! AJAX是一种通过Javascript与Web服务器通信的技术。 jQuery是一个Javascript框架。他们是苹果和橘子。您可以在普通的Javascript中执行AJAX请求,也可以使用jQuery包装器来发出AJAX请求。最后它们是相同的,jQuery只是让它更容易,因为它摘要的东西。 jQuery不是AJAX或Javascript的替代品,它只是一组功能,使日常工作更容易。

我建议你先使用普通的Javascript AJAX请求来了解在使用库来抽象细节之前的工作原理。

答案 3 :(得分:1)

jQuery 是一个旨在消除用户代理之间差异的JavaScript库。

Ajax (Ansynchronous JavaScript and XML)是一种向主机执行异步请求的技术。 jQuery(在许多其他库中......和vanilla JavaScript)支持Ajax(并通过跨用户代理提供标准化接口使其更容易)。


所以,真正的问题是:你应该使用jQuery来执行你的Ajax请求吗?

答案是:是的,如果你已经在使用jQuery - 如果没有,你可以包含jQuery或其他支持Ajax的JS库,或者你可以在vanilla JS中实现Ajax功能。

答案 4 :(得分:0)

当你说“AJAX”时,你究竟是什么意思?据我所知,无论您使用哪个库(jQuery或其他),您仍将使用异步服务器请求。

答案 5 :(得分:0)

你是不是在AJAX技术和jQuery库之间感到困惑... imo使用jQuery来执行AJAX

答案 6 :(得分:0)

我个人会使用jquery和getJson来检索数据。也许这是你的选择?

$.getJSON("getMenu", "parentID=" + parent, function (data) {
    $.each(data, function (index, item) {
        // add code to new 2nd listbox
     }
  }

然后你必须声明getMenu后端

这也可以用ajax

完成

答案 7 :(得分:0)

Ajax是一个method,用于描述某些Javascript代码(通常)调用的异步请求。 jQuery是一个在一些非常漂亮的包装器中实现这种技术的库。我建议您下载jQuery,这很简单,互联网上有很多代码和教程。

答案 8 :(得分:0)

如果你出现的数据太多了! 那么你可以使用Ajax,因为速度

如果不是太多 你可以使用javascript(jQuery)来阅读它们一次!

答案 9 :(得分:0)

你使用的是ASP还是ASP.NET?如果是ASP.NET,则只需将代码添加到列表框的onselectionchanged方法即可更改其他框中的值。 ASP.NET将负责所有AJAX调用。