(非原创)
引自:https://www.cnblogs.com/mmzuo-798/p/7098979.html
async的默认方式是true,即异步方式,当ajax方法执行后会继续执行方法之后的脚本,直到服务器返回数据后,触发服务的success方法,这时执行的是两个线程.
async设置为false时,为同步方式,当ajax方法执行后,在没有返回值之前,浏览器页面会被锁定,只有返回值请求完毕用户才可以在页面进行操作.
示例一:这个ajax请求为同步请求,在没有返回值之前,不执行下面的代码
$ajax({
type:"post",
url:"/map/checkMapName",
data:{mapName:mapName},
dataType:"json",
async:false,
success:function(data){
aa=data;
if(data=1){
lay.msg("轮播图名称不能重复!");
return;
}
}
})
示例二:这个ajax请求为同步请求,在没有返回值之前,alert(temp)是不会执行的
果async设置为:true,则不会等待ajax请求返回的结果,会直接执行ajax后面的语句。
var temp; $.ajax({ async: false, type : "post", url : defaultpostdata.url, datatype : 'json', success : function(data) { temp=data; } }); alert(temp);