2011-03-04 135 views
1

我有3个ASP列表框。出现在第二个列表框中的值列表取决于第一个列表框中的选定项目,而出现在第三个框中的值则基于第二个框中的选择出现。所有这些值都将从数据库中检索,我想知道它是否更好地使用AJAX或jQuery。我应该使用什么? AJAX或jQuery?

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

+0

这些不是对立面 jquery是一个JavaScript库 Ajax =“异步JavaScript和xml”是一种通信技术。 你可以用jquery使用make Ajax调用 – openCage 2011-03-04 09:09:30

+1

如果你真的认为你的问题有意义,你应该学习** JavaScript **。 – Felix 2011-03-04 09:11:31

回答

4

它们是不同的(虽然是相关的)概念。 jQuery是一个丰富的JavaScript库,提供AJAX支持等许多其他功能。

AJAX本身主要是各种JavaScript技术的通用术语,用于动态连接到Web服务器而不必加载多个页面。从狭义上讲,它指的是使用XmlHttpRequest对象通过JavaScript动态地与Web服务器进行交互。

+0

我已经阅读过无处不在,但似乎无法确定哪种方法更好。他们一起使用吗?他们有不同的语义吗?请赐教,并请特别关注我的案件。 – CodingInCircles 2011-03-04 09:12:12

+1

@Akshay:jQuery实现了AJAX。我不知道如何做得更清楚。 – 2011-03-04 09:16:39

1

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

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


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

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

0

当你说“AJAX”时,你的意思是什么?据我所见,无论你使用什么库(jQuery或其他),你仍然会使用异步服务器请求。

0

你没有得到的AJAX技术和jQuery之间混淆库...海事组织使用jQuery执行AJAX

0

我会亲自使用jquery用的getJSON中检索数据。也许这是你的选择?

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

那么你就必须声明使用getMenu后端

这可以用AJAX OFC也做

9

阿贾克斯的意思是“将数据发送到和/或不留使用JavaScript的网页从服务器接收数据“

jQuery是一个JavaScript库。

你不能选择它们之间,因为这是像“旅行”和“波音”之间进行选择(波音公司作出这样有助于你的旅行产品,其他公司也这样做。您可以在不使用任何制造的产品旅行波音公司做非旅行相关的事情)。

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

如果您想要根据前一个选择的数据更改select元素中的数据,那么JavaScript库可以为您节省一些麻烦,但可能不值得额外的页面加权(尽管如果您使用了许多功能JS然后这个努力会加起来,直到它从一开始就值得使用一个库)。

如果你想使用Ajax,那么有足够的浏览器差异,JS库可能是值得的权重。随着图书馆去,jQuery是合理和流行的。

+1

AJAX的这个定义过于宽泛。 Java和Flash小应用程序与服务器交互时不会离开页面,但没有人称之为AJAX。 – 2011-03-04 09:20:03

0

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

4

羽毛还是铅?

它不是 - 或者! AJAX是一种通过Javascript与Web服务器交谈的技术。 jQuery是一个Javascript框架。他们是苹果和桔子。您可以使用纯Javascript执行AJAX请求,也可以使用jQuery包装器进行AJAX请求。最后他们是一样的,jQuery只是让它更容易,因为它摘要的东西。 jQuery不是AJAX或Javascript的替代品,它只是一组使日常任务更容易的功能。

我建议你先用简单的Javascript AJAX请求开始学习在使用库来抽象细节之前工作是如何工作的。

+0

谢谢你的回答!让我明白这个区别非常好。谢谢! – CodingInCircles 2011-03-04 09:17:55

+0

解释的好答案。 – Obsidian 2014-06-16 08:46:49

0

如果您出现数据太多! 然后你可以使用Ajax,因为速度

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

+0

这个答案有误导性。 AJAX和jQuery不是竞争选项。 – 2011-03-04 09:21:21

0

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