我正在调用ajax函数,该函数返回带有数据列标签的数据集(响应)。其中一个列标签会根据发起呼叫的位置而更改。
通常,如果列标签是硬编码,则以下代码访问响应变量:
for (var i = 0; i < response.d.length; i++) {
data.setValue(i, 1, response.d[i].Emissions);
}
但是,我需要能够使用自标签更改后传入的单独字符串变量来访问响应变量。以下是我做这件事的微弱尝试,但它没有用。这样做的正确语法是什么?
var columnLabel = 'Emissions';
for (var i = 0; i < response.d.length; i++) {
data.setValue(i, 1, response.d[i].columnLabel);
}
答案 0 :(得分:8)
您需要使用[]
- 运算符:
data.setValue(i, 1, response.d[i][columnLabel]);
obj.property
相当于obj['property']
。
答案 1 :(得分:0)
试试这个:
for (var i = 0; i < response.d.length; i++) {
data.setValue(i, 1, response.d[i]['Emissions']);
}