0
#1(ERS)的變量,如何檢索中的jquery AJAX .done()
我已經創建在其中從對象數組處理數據JavaScript函數,並且在這種功能,我通過迭代數組調用數組中每個對象的ajax請求。
但是,在ajax.done()函數中,我需要傳入迭代的索引j。然而,在迭代內部,j停留在4,而在迭代之外,j通過迭代成功計數。請注意,下面代碼中的i迭代循環遍歷每個ajax請求以抽出某些值以形成一個數組,因此可以忽略。
任何人都可以幫助我制定出我需要做什麼來使j迭代在.done()塊內?
感謝, 傑米
對象傳遞給代碼:
var dataConfig = [
{ targetDiv: "#chart", chartTitle: "Title", tooltipVisible: true, xAxisLabel: "Label", leftYAxisLabel: "Unit" },
{ apiUrl: "URL", type: "column", yAxis: "right", visibleInLegend: false },
{ apiUrl: "URL", type: "line", yAxis: "left", visibleInLegend: false },
{ apiUrl: "URL", type: "line", yAxis: "left", visibleInLegend: false },
];
驗證碼:
for (var j = 2; j < dataConfig.length; j++) {
console.log(j);
chartConfig[j] = {
yAxisValues: [],
type: dataConfig[j].type,
yAxis: dataConfig[j].yAxis,
visibleInLegend: dataConfig[j].visibleInLegend
}
$.ajax({
url: baseURL + dataConfig[j].apiUrl,
beforeSend: function (xhr) {
xhr.setRequestHeader('Authorization', 'yes');
}
}).done(function (data) {
//get Y Axis Values
var yAxisData = data.DataSeries.Data;
yAxisValues = [];
for (var i = 0; i < yAxisData.length; i++) {
var yAxisValue = yAxisData[i].Y[0];
yAxisValues.push(parseInt(yAxisValue, 10));
};
console.log(yAxisValues);
console.log("j:", j);
// chartConfig[j].yAxisValues = yAxisValues;
});
};
完美的作品,謝謝! – Jamie