ajax async异步请求和同步请求
ajax是指异步加载。这个异步是相对于页面来说的,页面不刷新就加载服务器数据。ajax中的请求又分为同步请求和异步请求,这里是相对于进程来说的,ajax异步请求,发送请求了不用等服务器响应,页面其他的地方还能点,其他的函数也能执行。可是我们有时候也需要使用ajax同步请求,要求服务器没响应前,页面其他函数不能执行。下面分别来看如何实现。
异步Async=true
当使用 async=true 时,处理服务器返回的方法要在onreadystatechange中执行:
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
alert("我先执行,不用等你请求服务器完成,没有任何阻碍");
同步Async=false
如需使用 async=false,请将 open() 方法中的第三个参数改为 false:
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_info.txt",false);
xmlhttp.send();
alert("我慢执行,我要等你的ajax全部搞完,回调函数执行完了才轮到我");
如果觉得《ajax异步详解同步请求 ajax async异步请求和同步请求》对你有帮助,请点赞、收藏,并留下你的观点哦!