正常情况:
function a() {
return true;
}
function b() {
var ret = a();
alert(ret);
}
异常情况:
function a() {
$.ajax({
url:'www.baidu.com',
data: {},
method:'post',
dataType:'json',
success:function(data){
return true;
},
error: function (data) {
return false;
}
});
}
function b() {
var ret = a();
alert(ret);
}
由于使用ajax进行异步请求,导致函数调用a函数,不等ajax执行完,就执行alert,导致无法获取a函数的输出,输出报错。
修改方法:
function a() {
$.ajax({
url:'www.baidu.com',
data: {},
method:'post',
dataType:'json',
async:false,
success:function(data){
return true;
},
error: function (data) {
return false;
}
});
}
function b() {
var ret = a();
alert(ret);
}
关闭ajax的异步请求为同步即可。