ajax中同步与异步的一个小区别

前端之家收集整理的这篇文章主要介绍了ajax中同步与异步的一个小区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

第一种情况:异步请求:xhr.open('post','check_name.do',true);

function check_name(){

var flag=false;
xhr.open('post',true);
xhr.setRequestHeader('content-type',
'application/x-www-form-urlencoded');
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
var txt=xhr.responseText;
document.getElementById("username_msg").innerHTML=txt;
flag=true;
}
};
xhr.send('username='+text);

alert(flag);

returnflag;

这里alert(flag)的结果为false,return返回为false。程序依次执行,不会等待从服务器返回后执行状态处理函数


第二种情况:同步请求xhr.open('post',false);

这里alert(flag)的结果为true,return返回为true。执行了xhr.send()之后,再等待从服务器返回后执行状态处理函数,然后执行return


一般在等待表单验证登录时,可以采用同步请求方式,通常情况下都用异步请求方式。

原文链接:https://www.f2er.com/ajax/166320.html

猜你在找的Ajax相关文章