async 默认是 true,也就是默认是为异步方式。$.ajax 执行后,会继续执行ajax后面的 js 脚本,服务器端返回数据后,会触发 $.ajax 里的 success 方法,这时候执行的是两个线程。
如果将它设置为 false ( async : false ),那么所有的请求都会变为同步请求,在没有返回值之前,发出的请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
看一个示例:
var temp;
$.ajax({
async: false,
type : "post",
url : postdata.url,
datatype : 'json',
success : function( data ) {
temp = data;
}
});
alert(temp);
这个 ajax 请求是同步请求,在没有返回值之前,alert( temp ) 不会执行。
如果设置 async :true,那就不会等待 ajax 请求返回的结果,会直接执行 ajax 后面的 alert 语句。
如果将它设置为 false ( async : false ),那么所有的请求都会变为同步请求,在没有返回值之前,发出的请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
看一个示例:
var temp;
$.ajax({
async: false,
type : "post",
url : postdata.url,
datatype : 'json',
success : function( data ) {
temp = data;
}
});
alert(temp);
这个 ajax 请求是同步请求,在没有返回值之前,alert( temp ) 不会执行。
如果设置 async :true,那就不会等待 ajax 请求返回的结果,会直接执行 ajax 后面的 alert 语句。
本文探讨了在$.ajax中async参数的作用。当设置为true时,默认为异步请求,浏览器将继续执行后续脚本,而服务器响应则触发success回调;若设置为false,则变为同步请求,阻止浏览器进一步操作直至请求完成。
810

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



