2

私の Javascript ファイルには複数の ajax 呼び出しがあり、すべての ajax 呼び出しを 1 つの ajax 呼び出しに変更したいと考えています。これが私のサンプルJSコードです。

var vpnPin = $.ajax({ 
  dataType: "json",
  url: "url",
  async: true,
  success: function(result) {}                     
});  //$.ajax() ends


var vpnDataPlan = $.ajax({ 
  dataType: "json",
  url: "url",
  async: true,
  success: function(result) {}  
});  //$.ajax() ends

1 つの AJAX 呼び出しに対して複数の AJAX 呼び出しを呼び出すにはどうすればよいですか?

4

2 に答える 2

7

JavaScript で promises の概念を使用することは可能です。promise と defered を読みます。

上記の例を使用すると、次のように実行できます。

//assuming vpnPin and vpnDataPlan are the deferred object returned from $.ajax.
//As you have done in your example.

$.when(vpnPin, vpnDataPlan).done(function(){
    //work to do after the completion of both calls.
});

これにはさらに多くのバリエーションがあります。RSVPは、Promiseを処理する標準的な方法を実装しています。

于 2013-07-30T09:54:53.163 に答える