AJAX jQuery.load与jQuery.get

jam*_*vey 17 ajax jquery

在使用jQuery进行AJAX调用时,何时应该使用load(url,data,callback)方法而不是jQuery.get(url,data,callback,type)?

Art*_*ger 21

首先,这两个功能完全不同.'load'函数与选择器一起工作,并在所选组内加载AJAX调用的结果,回调是处理调用的"oncomplete"事件; 而$ .get函数更通用,回调处理AJAX调用的成功响应,您可以自由定义所需的任何行为.您只需查看jQuery框架的文档和规范即可找到所有这些信息.

在这里你可以找到一个很好的文档.


Suj*_*jay 16

@ Artem的答案似乎忽略了这样load一个事实,即它是一个更通用的功能get.根据jQuery API文档,加载使用getpost取决于数据.在这里引用它:

请求方法

如果数据作为对象提供,则使用POST方法; 否则,假设GET.

因此,为了从服务器获取部分HTML内容并将其插入DOM,这load是一种比get方法更好的方法,因为开发人员不需要担心在获取之前处理大量数据和加载函数所执行的各种中间步骤&插入内容之前.

例如,如果需要加载页面的部分内容,可以使用以下表达式: $('#result').load('ajax/test.html #container');

这将检索ajax/test.html的内容,然后jQuery解析返回的文档以查找ID为的元素container.此元素及其内容将插入ID为的元素中result,并且将丢弃检索到的文档的其余部分.

要记住的一件事是,当您只需要一个GET请求时,请避免向data参数提供对象,而是使用该$.param方法获取请求参数的序列化形式.


rpj*_*nst 8

load将数据直接注入DOM.如果您不需要此行为,请使用get.