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