Hey there、 私は、ajax-requestとaTimeを含むjQuery each() - ループを作成しています。それは私にプログラムの流れにいくつかの問題を与えています。each-loopが完了した後に関数を実行する
xml_queries: function (data) {
var values = [];
// ...
$.each(data, function(index, value) {
// ...
// Start xml query
var i = 0;
get_data(value.value);
function get_data(value) {
$.ajax({
type: 'POST',
url: '/admin/scanner/get_music_data/' + value,
dataTaype: 'json',
success: function(response) {
if (response === 'FALSE') {
// Start recursion - up to 3 Retries
if (++i <= 3) {
setTimeout(function() {
get_data();
}, 100);
} else {
// ...
}
} else {
values.push(response);
}
}
});
}
});
// return values;
console.log(values);
}
私の問題は、(ループがまだデータを処理している間に)最後の行ではconsole.log()がすぐに解雇されていることです。ループが終了するのを待つ簡単な方法はありませんか? \:
よろしくお願いいたします。
それは通常のAjax-である非同期問題だを再設計することであろう。これについては、1つのフレーバーや別のもので、**トン**の質問があります。 –