我正在收到JSON回复,如下所示:
[{
"order_id": "12",
"customer": "user user",
"status": "Pending",
"date_added": "02\/09\/2012",
"total": "$500.00",
"action": [{
"text": "View",
"href": "http:\/\/localhost\/oc\/admin\/index.php?route=sale\/order\/info&token=92a80574e5fcbf3e2d021404cfaae1a4&order_id=12"
}]
}]
看看动作键,它的值又是一个数组。我试图通过以下代码获取操作键值,但它显示未定义给我
function (data) {
if (data) {
for (var i = 0; i < data.length; i++) {
$('div.dashboard-content table.list tbody tr:first').before(
'<tr id="' +
data[i]['order_id'] +
'"><td class="right">' +
data[i]['order_id'] +
'</td><td class="left">' +
data[i]['customer'] +
'</td><td class="left">' +
data[i]['status'] +
'</td><td class="left">' +
data[i]['date_added'] +
'</td><td class="right">' +
data[i]['total'] +
'</td><td class="right"> [<a href="' +
data[i]['action']['href'] + '">' +
data[i]['action']['text'] +
'</a>]</td></tr>'
);
}
}
}
有人能帮助我吗? 提前谢谢。
答案 0 :(得分:5)
就像你说的那样,action
是一个数组。因此,您无法使用data[i]['action']['href']
访问它。您必须使用下标来指示所需数组的位置。例如,要访问第一个位置,您可以使用:
var href = data[i].action[0].href;
var text = data[i].action[0].text;
答案 1 :(得分:3)
action
是一个包含带有名为text的属性的对象的数组。变化:
data[i]['action']['text']
为:
data[i]['action'][0]['text']