我使用以下代码进行AJAX调用:
$.ajax({
url: href,
type: 'POST',
data: {},
dataType: "json",
error: function(req, resulttype, exc)
{
// do error handling
},
success: function(data)
{
for (var tracklist in data) {
console.log(tracklist.name); // undefined
console.log(tracklist['name']); // undefined
}
}
});对于AJAX请求,我返回的内容是:
{"5":{"id":5,"name":"2 tracks","count":2},"4":{"id":4,"name":"ddddd","count":1},"7":{"id":7,"name":"Final test","count":2}}我想知道的是如何访问当前曲目列表的名称属性。
发布于 2011-05-23 00:06:15
你应该使用
console.log(data[tracklist].name);而不是
console.log(tracklist.name);发布于 2011-05-23 00:06:15
如果你想遍历这些对象,最好返回一个数组:
[{"id":5,"name":"2 tracks","count":2},{"id":4,"name":"ddddd","count":1},{"id":7,"name":"Final test","count":2}]然后,您可以使用与您尝试的类似的for循环:
for (var tracklist in data) {
console.log(data[tracklist].id);
console.log(data[tracklist].name);
}发布于 2011-05-23 00:10:47
在循环中:
for (var tracklist in data) {
console.log(tracklist.name); // undefined
console.log(tracklist['name']); // undefined
}tracklist是每个元素的键,而不是它的值。
因此:
for (var tracklist in data) {
console.log(data[tracklist].name); // ... or ...
console.log(data[tracklist]['name']);
}https://stackoverflow.com/questions/6089088
复制相似问题