我正在使用以下 ajax 返回 JSON 数据:-
$.ajax({
type: "POST",
url: "####",
data: "####",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
????
}
});
这是返回的 JSON 数据,当鼠标悬停在 Chrome 开发者工具中的函数(数据)上时,我看到了这一点:-
d: "[{"name":"deepak","arrivalTime":"675"},{"name":"sumit","arrivalTime":"690"},{"name":"satish","arrivalTime":"1740"}]"
现在我想循环并显示名称和到达时间,请帮助我。
我尝试了以下方法,但没有一个起作用:-
1.
for (var i = 0; i < data.length; i++) {
var obj = data[i];
for (var key in obj) {
var attrName = key;
var attrValue = obj[key];
}
}
2.
for (var i = 0; i < data.length; i++) {
var obj = data[i];
console.log(obj.name);
console.log(obj.arrivalTime);
}
3.
$.map(data.d, function (item, data) {
console.log(item.name);
console.log(data.name);
console.log(item.arrivalTime);
console.log(data.arrivalTime); //tried all luck :)
});
4.
$.each(data, function(i, item) {
alert(data[i].name);
alert(data[i].arrivalTime);
})
5.
$.each(data, function(i, item) {
alert(item.name);
alert(item.arrivalTime);
})
最佳答案
不确定您得到了什么,但似乎您的数据作为对象 d 返回。
var dataArray = data.d;
for (var i = 0; i < dataArray.length; i++){
var name = dataArray[i].name;
var arrivalTime = dataArray[i].arrivalTime;
};
顺便说一句,对我来说,你的字符串数组看起来像一个字符串,你可能想解析它。
var dataArray = JSON.parse(data.d);
for (var i = 0; i < dataArray.length; i++){
var name = dataArray[i].name;
var arrivalTime = dataArray[i].arrivalTime;
};
关于javascript - ajax 成功后循环 JSON 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24676625/