私は2つのajax呼び出しを並列に行いたいと応答し、各呼び出しから2つの配列を取得します。私はそれらの2つの配列をマージし、HTMLで表示したいと思います。それを行う最善の方法は何ですか?通話が完了したか、いずれかの通話が途絶えていることをどのようにして知ることができますか?両方のAJAX呼び出しは次のコードは、マージを行います成功しJavascriptを使用した2つの並列ajax呼び出しのマージ応答
答えて
終了した場合にのみ、コールバックはクビにすべきである:一方
var result1 = ['a', 'b'];
var result2 = ['c', 'd'];
var mergedResult = result1.concat(result2);
EDIT
を、あなたはそれがあなたのドン、私たちに語りました配列のマージは必要ですが、同期されたajax呼び出しは必要ありません。あなたは古いブラウザをサポートする必要がある場合、私は図書館をお勧めしますhttp://caniuse.com/#search=promise
- :私はそのためのいくつかのソリューションを参照してください。たぶんあなたは既にjQueryを使用しているか、より軽量なライブラリを見るためにLightweight implementation of promisesを見ることができます。
- オープンなajaxコールを数え、そのうちの1つが完了するとカウンタを減少させ、カウンタがゼロになった後でアクションを実行することで、「小さな」ソリューションを試すことができます。私はそれをお勧めしませんが、それは簡単な方法です。
並列実行する2つのajax呼び出しにレスポンスをマージする必要があります –
これらのソリューションはどれですか? –
いいえ!私の懸念は、ライブラリを使用せずにコアJSで上記の結果を達成することです。私は2つのXHRオブジェクトを並行して実行し、XHR応答ステータスが200の場合には1つの関数が実行されるはずです。これは私の正確なクエリです。 –
var p1 = new Promise(function(resolve, reject){
//Ajax call 1
resolve(response1)
})
var p2 = new Promise(function(resolve, reject){
//Ajax call 2
resolve(response2)
})
Promise.all([p1, p2]).then(function(values){
//Here we will get values of p1, p2
});
このコードスニペットは問題を解決するかもしれませんが、[説明を含む](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。あなたのコードに説明的なコメントを詰め込まないようにしてください。これは、コードと説明の両方の可読性を低下させます! –
- 1. JavascriptのAJAX呼び出し応答ステータス200 OKが、エラーコールバックが
- 2. ネストされたajax呼び出し、最初の応答のポストバック
- 3. エラー:AJAX応答内のAJAX呼び出し
- 4. jquery関数をajax呼び出しの応答に使用する
- 5. 文字列パラメータを使用したAjaxメソッドのJavaScript呼び出し
- 6. PHPがajax呼び出しでスクリプトの応答を表示
- 7. JavaScriptを使用したAJAX呼び出し
- 8. Ajax呼び出しの応答リターン[オブジェクトのオブジェクト]
- 9. ajax呼び出しからの未定義応答の取得
- 10. 307 laravelでのajax呼び出しでのhttp応答
- 11. RxJava - 2つのAPI呼び出しの並列実行
- 12. Ajaxの呼び出しと返信応答
- 13. 2つのjQuery AJAX呼び出しの結果をマージし、遅延/約束を使用する方法
- 14. UIWebViewはJavaScriptの呼び出しに応答します
- 15. IEのWindowsフォームコントロールがJavaScript呼び出しに応答しない
- 16. PUT呼び出しからの応答を無視する - javascript
- 17. Angular 2を使用してjQueryベースのJavaScriptのAjaxライブラリを呼び出す
- 18. 前の呼び出しからの応答を必要とする複数のAJAX API呼び出しのベストプラクティス?
- 19. RailsでAJAX呼び出しに応答する方法
- 20. jqueryのAjax応答ファイルのコード内でjavascript関数を呼び出す
- 21. Ajax呼び出しは応答を待つべきではありません
- 22. Ajax呼び出しのうち、AJAX成功機能からの応答データを使用する方法
- 23. サーブレットはAJAX呼び出しで応答しません。コンソールから呼び出されたとき
- 24. Javascriptで前のフェッチ呼び出しから応答が来た後、別のフェッチを呼び出す方法は?
- 25. 2つのパラメータを送信するjquery ajaxを使用したメソッドへのSOAP webservice呼び出し、ループ内の応答の捕捉方法
- 26. $ fetchを使用したHTTP Ajax呼び出しでのエラー処理Javascript
- 27. 2つのjavascriptファイルから1つのPHPファイルへの応答を取得するためのajax呼び出しの作成
- 28. Ajaxオプションを使用して2つの関数を呼び出す
- 29. AzureモバイルサービスSDKを使用したiOSでの並列呼び出し
- 30. Async/Awaitを使用したC#WebClient APIの並列呼び出し
"ベストウェイ";それが客観的に何を意味するのかを説明してくださいまた、いくつかのコードを示してください。 SOはコード作成サービスではありません。現在、この質問はかなり広いです。 –
@MikeMcCaughan私は約束を使ってそれに答えました。しかし、約束はすべてのブラウザでサポートされていません。だから私たちは他の方法でそれをすることができます。 –
質問を編集してみてください。それ以外の場合は、以下に示すように、推測の束を得るだろう。 –