1

複数の jsonp リクエストからデータを取得する JavaScript アプリケーションがあります。すべてのデータが返されると、ページは新しいデータで更新されます。以下は擬似コードですが、同期環境向けに構成されています。

function GetAllData() {

   var data1= GetData1();
   var data2= GetData2();
   var data3= GetData3();

   UpdatePage(data1,data2,data3);
}

私が抱えている問題は、ページを更新する前に、すべてのデータが jsonp リクエストから返されたときに収集して知る必要があることです。jquery deferred を見ていましたが、それが正しい解決策かどうかはわかりません。

任意の提案をいただければ幸いです。

4

1 に答える 1

1

JQueryを使用している場合、遅延は正しいソリューションです。

function GetData1() {
    return $.ajax("/foo", ...);
}

function GetData2() {
    return $.ajax("/bar", ...);
}

function GetData3() {
    return $.ajax("/baz", ...);
}

function UpdatePage(data1, data2, data3) {
    ...
}

function Error() {
    alert("An error occurred while fetching data");
}

function GetAllData() {
    $.when(GetData1(), GetData2(), GetData3()).then(UpdatePage, Error);
}
于 2013-08-07T02:15:13.993 に答える