この質問は、私がここで質問した質問に関連している可能性があります。Jquery ajax request with async:true does not return valueAjaxリクエストからコールバック関数の値を取得する方法
今、別の問題に直面しています。どのように私はコールバック関数から値を取得するのですか?
function find_bus_route(array_bustops,callback){
$.ajax({
type: 'POST',
async: true,
url: 'find_routenum.php',
data:{
array_bustops:JSON.stringify(array_bustops)
},
dataType:'json', //html,xml
success: function(my_results){
callback(my_results);
},
error:function(x,e){
if(x.status==0){
alert('You are offline!!\n Please Check Your Network.');
}else if(x.status==404){
alert('Requested URL not found.');
}
}
});
}//end function
var arr_one;
find_bus_route(arr_bus,function (data){
arr_one=data;
alert(arr_one) //has correct value
}
alert (arr_one) //-->This returns undefined..
arr_oneが有効範囲外のようです。
if(arr_one == arr_two){
//do something.
}
は実際に私が何をしようとしているこれです: はfalseに設定され、関数find_bus_routeが値を返すコールバックと非同期がないと仮定します。
var arr_one=find_bus_route(arr_stop1);
var arr_two=find_bus_route(arr_stop2);
if(arr_one==arr_two){
//do something
}
else {
//do something
};
私の質問の+コードを編集しました –
私の答えは今編集されています:) –