私は2つのjquery ajax呼び出しを持っています。
すべての呼び出しが完了した後、両方の返されたデータを取得します。
例として、両方とも "num"を返します。すべてのAjax呼び出しからすべての返されたデータを取得するにはどうすればいいですか?
$(document).ready(function() {
var allPromises = [
$.ajax({url: '/ajax.php', method: 'post', data: {num: 1}}),
$.ajax({url: '/ajax.php', method: 'post', data: {num: 2}})
];
$.when.apply($, allPromises).done(function(returnData) {
console.log(returnData);
});
});
は、例えば、私が返された値の合計を取得したい:
はここに私のコードです。
問題は、最初のリクエストからのみデータが取得されていることです。
グローバル変数に保存せずにどうすればいいですか?
が動作しているようです、ありませんそれ? – Bergi
あなたは 'console.log(returnData)'を持っている '.done()'ハンドラの中でデータを使用します。これは、データを使用するタイミングが正しいことがわかっているコード内の唯一の場所です。データを合計したい場合は、そこで合計します。 – jfriend00
@Bergi問題は、1つのリクエストからのみデータを取得していることです。 – lvil