在jquery的ajax中如果我们希望实现同步或者异步我们可以直接设置async发生为真或假即可true false
$.ajax({
async: false,
type : "GET",
url : 'tet.php',
complete: function(msg){
alert('complete');
},
success : function(data) {
alert('success');
temp=data;
}
});
alert(temp+'end');
}
async: false,(默认是true);
如上:false为同步,这个 testAsync()方法中的Ajax请求将整个浏览器锁死,
只有tet.php执行结束后,才可以执行其它操作。
当async: true 时,ajax请求是异步的。但是其中有个问题:testAsync()中的ajax请求和其后面的操作是异步执行的,那么当tet.php还未执行完,就可能已经执行了 ajax请求后面的操作,如: alert(temp+' end');然而,temp这个数据是在ajax请求success后才赋值的,结果,输出时会为空。
同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除。
而异步则这个AJAX代码运行中的时候其他代码一样可以运行。
本文详细解释了在jQuery的Ajax请求中如何设置同步或异步,并探讨了这两种模式的区别及应用场景。同步模式会导致浏览器锁定直到请求完成,而异步模式则允许页面其他部分继续执行。
1087

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



