在函数外部使用Ajax结果

如何在ajax函数之外使用ajax请求的结果?

我将结果发送到其他function,它应该正常工作。

这是我使用的代码。

function ajaxcall_array(value) { var tmpajaxdata = new Array(); for (var i = 0; i < value.length; ++i){ tmpvar=(value[i]) ; tmpajaxdata.push(tmpvar) ; return tmpajaxdata ; } return tmpajaxdata ; alert(tmpajaxdata); console.debug(tmpajaxdata); } function ajaxcall(){ $.ajax({ url: 'ajax.php', data: "name", type:'GET', async:false, dataType: 'json', //data format success: function(results) //on recieve of reply { ajaxdata = ajaxcall_array(results) ; return ajaxdata ; } }); return ajaxdata ; alert(ajaxdata); } ajaxcall(); 

谢谢

这是有效的,但是在你的alert / console.log之前你已经在ajaxcall_arrray()返回了值

 function ajaxcall_array(value) { var tmpajaxdata = new Array(); for (var i = 0; i < value.length; ++i){ tmpvar=(value[i]) ; tmpajaxdata.push(tmpvar) ; return tmpajaxdata ; } return tmpajaxdata ; // HERE ALREADY RETURNED // CODE BELOW NEVER HIT alert(tmpajaxdata); console.debug(tmpajaxdata); }