私はjQueryを使用しています。「get_cats」と呼ばれるリモートサーバーからデータをフェッチする関数があります。これを呼び出して、返された値で配列を埋めます。AJAX が完成したら、値を返したいと思います。しかし、それは機能しません。返される値は未定義です。これはかなり基本的なものですが、どこが失敗するのかわかりません。誰も手がかりを持っていますか?
$(function () {
var url = "http://someurl.com/service/";
var cats = [];
cats = get_cats(url);
function get_cats(url) {
var categories = [];
$.getJSON(url + "cats", function (data) {
$.each(data, function (i) {
categories.push(data[i].name);
});
return categories;
});
}
$(document).ajaxStop(function () {
console.log(cats); // fails and returns undefined :'(
});
});