关于jQuery AJAX,我有两个问题。
( 1) $.load()
与$.ajax() used with type: 'GET'
有何区别?他们似乎做同样的工作。
( 2)这个问题与下面的代码有关。如果我根本不写"type: GET“行,会发生什么情况?这意味着同样的事情吗?
$(document).ready(function() {
$('#update').click(function() {
$.ajax({
type: 'GET',
url: 'hello-ajax.html',
dataType: 'html',
success: function(html, textStatus) {
$('body').append(html);
},
error: function(xhr, textStatus, errorThrown) {
alert('An error occurred! ' + ( errorThrown ? errorThrown :
391
xhr.status );
}
});
});
});
它和
$(document).ready(function() {
$('#update').click(function() {
$.ajax({
url: 'hello-ajax.html',
dataType: 'html',
success: function(html, textStatus) {
$('body').append(html);
},
error: function(xhr, textStatus, errorThrown) {
alert('An error occurred! ' + ( errorThrown ? errorThrown :
391
xhr.status );
}
});
});
});
发布于 2013-11-04 13:40:08
这是直接来自jQuery文档(http://api.jquery.com/load/)的
.load()方法与$.get()不同,允许我们指定要插入的远程文档的一部分。这是通过url参数的特殊语法实现的。如果字符串中包含一个或多个空格字符,则假定第一个空格后面的字符串部分是确定要加载的内容的jQuery选择器。
由于$.get()
只是"data:'Get'“的$.ajax()
缩写,所以看起来唯一的主要区别是执行上述操作的能力(导入文档的部分部分)。
编辑:要回答第二个问题,GET是$.ajax()调用的默认数据类型,POST是您的另一个选项。你可以在这里读一些关于POST的文章(http://api.jquery.com/jQuery.post/)
发布于 2013-11-04 13:40:40
从jQuery手册.load中提取
此方法是从服务器获取数据的最简单方法。它大致相当于$.get(url,data,success),只是它是一个方法而不是全局函数,并且它有一个隐式回调函数。当检测到成功的响应(即当textStatus是“成功”或“未修改”时),.load()将匹配元素的HTML内容设置为返回的数据。这意味着该方法的大多数使用可能非常简单:
$( "#result" ).load( "ajax/test.html" );
如果选择器没有匹配任何元素--在本例中,如果文档不包含具有id=“结果”的元素--则不会发送Ajax请求。
发布于 2013-11-04 13:49:06
我想区别在于.load()函数允许将结果定向到DOM元素中。就像这样
$( "#target" ).load( "source.html" );
而ajax()方法返回一个对象(例如。这是可以被操纵的。等等,除了更多的属性。
https://stackoverflow.com/questions/19768845
复制相似问题