猿问

一个方法中的ajax在success中renturn一个值,但是方法的返回值是undefind?

A页面
console.log(handleData("search_list","http://192.168.1.11/Sueach/index",data));//undefind
//if(handleData("search_list","http://192.168.1.11/Sueach/index",data)=="none"){
//document.querySelector(".search-error").style.display="block";
//}
js页面
请输入代码functionhandleData(warp,url,par){
par.mobile=mobile;
mui.ajax(url,{
data:par,
dataType:'json',
type:'get',
timeout:10000,
success:function(data){
console.log(data.status);//为0
if(data.status==0){
console.log(""执行了);//执行到这
return"none";
}
handleJson(data.data,warp,par.p);
},
error:function(xhr,type,errorThrown){
console.log(type);
}
});
}
为什么console.log输出的为undefined呢?
慕尼黑5688855
浏览 433回答 2
2回答

Qyouu

handleData没有返回值默认值是undefined我一般这样写functionhandleData(warp,url,par){varresult="";par.mobile=mobile;mui.ajax(url,{data:par,dataType:'json',type:'get',async:false,//timeout:10000,success:function(data){console.log(data.status);//为0if(data.status==0){console.log(""执行了);//执行到这result="none";return;//这里会退出success函数}else{//这样在status!=0时才执行,handleJson(data.data,warp,par.p);}},error:function(xhr,type,errorThrown){console.log(type);}});returnresult;}

宝慕林4294392

1)mui.ajax是个异步调用方法啊,handleData方法返回时候,mui.ajax还没执行完呢2)handleData方法没有返回值,就返回默认的undefined
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答