私はチャートを作るために、データのブランチを呼び出す必要があるので、私は10以上の異なるAPIを呼び出す必要があるので、私はこのアヤックス:で複数のAPIを呼び出すforループ
function trend1() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile0").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend2() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile1").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend3() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile2").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend4() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile3").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend5() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile4").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend6() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile5").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend7() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile6").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend8() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile7").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend9() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile8").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
function trend10() {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile9").html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
$.when(trend1(), trend2(), trend3(), trend4(), trend5(), trend6(), trend7(), trend8(), trend9(), trend10()).done(function(trend1_data, trend2_data, trend3_data, trend4_data, trend5_data, trend6_data, trend7_data, trend8_data, trend9_data, trend10_data) {
//do something
})
どのように月と同様の機能を作成しました私はこの大規模なコードをforループに入れますか?アヤックスは私にこれをさせるのですか?
UPDATE 1:
function trend0()...
function trend1()...
function trend2()...
function trend3()...
....
$.when(trend1(), trend2()).done(function(trend1_data, trend2_data) {
for (var i = 0; i<N; i++) // with N your n* of cycles
eval("trend" + i + "()");
}
}
私は以下のような何かをやっていますか?
ソリューション:
var i = "";
for (var i=0; i<5; i++) {
var trend = function(i) {
if ($(".numberOfProfile"+i).length) {
return $.ajax({
url: '/dashboard/getTrend' + '?period=30d' + "&profileId=" + $(".numberOfProfile"+ i).html(), //getting the api
type: 'get',
success: function(data) {
}
});
}
else
{
return false;
}
}
i++
}
私はもはや$ .when()を使う必要はありませんか? – anson920520
私の解決策を見てもらえますか?ありがとう! – anson920520