请求是异步的
因为jQuery的Ajax请求默认是异步的(可以通过配置选项属性async:false来变成同步的),所以响应只能在回调函数中被处理。同源策略和JSONP通常Ajax请求只能限制请求相同协议、相同端口、以及相同的域名下的资源。但是这个限制在使用jQuery加载script标签时不会起作用。JSONP使用一个script标签来执行跨域请求,因为script标签的请求不受同源策略的限制。script中会携带我请求的数据,并将其包裹在我指定的回调函数中。jQuery的Ajax相关的方法最核心的方法是.ajax()。.ajax()。.ajax()。.ajax()
.ajax()方法是一个有力并且直接的创建Ajax请求的方法。使用一个选项对象作为参数传给它,这个选项对象的属性配置了完成请求所需要的所有指令。.ajax()方法是一个有力并且直接的创建Ajax请求的方法。使用一个选项对象作为参数传给它,这个选项对象的属性配置了完成请求所需要的所有指令。.ajax()方法是一个有力并且直接的创建Ajax请求的方法。使用一个选项对象作为参数传给它,这个选项对象的属性配置了完成请求所需要的所有指令。.ajax()提供了成功以及失败的回调函数。
实例代码如下:
$.ajax({url: “post.php”,type: “post”,data: { // 传输的数据,如果是get请求将会被转为URL中的请求参数id:1},dataType: json // 我们期待返回的数据类型})
.done(function(json){}) // 请求成功的回调
.fail(function(xhr,status,errorThrown){}) // 请求失败的回调
.always(function(xhr,status){}) // 不论成功或者失败都会被调用
注意:尽管dataType被设置了,但是如果服务器返回的类型不是我们期待的类型的时候,这时可能不会正常工作,所以一定要保证后端返回的Content−Type是我们所需要的类型。 尽管dataType被设置了,但是如果服务器返回的类型不是我们期待的类型的时候,这时可能不会正常工作,所以一定要保证后端返回的Content-Type是我们所需要的类型。尽管dataType被设置了,但是如果服务器返回的类型不是我们期待的类型的时候,这时可能不会正常工作,所以一定要保证后端返回的Content−Type是我们所需要的类型
509

被折叠的 条评论
为什么被折叠?



