javascript – 如何使用jQuery访问JSON中的’@attr’值

前端之家收集整理的这篇文章主要介绍了javascript – 如何使用jQuery访问JSON中的’@attr’值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用last.fm api来获取艺术家图像,而我正在获取JSON结果,我需要检查’@attr’值.不幸的是,我似乎无法访问此值.结果看起来像:

@H_502_5@{"image":[{ "url":"http:\/\/www.last.fm\/music\/Undefined\/+images\/3040021","format":"jpg","sizes":{"size":{"#text":"http:...jpg","name":"original","width":"397","height":"397"},{"#text":"http:...jpg","name":"large","width":"126","height":"126"},]},"@attr":{"official":"yes"}}

这是我无法达到的最后价值……

有任何想法吗?

我试过[‘@attr’]它并没有’似乎工作 – 只返回undefined.

我正在做一个$.each(obj.image,function(){}) – 并且在我成功获得this.url,this.format等 – 但我没有运气这个[‘@ attr “]

最佳答案
使用bracket notation成员运算符:

@H_502_5@var value = obj[0]['@attr'];

然后您可以通过以下方式访问官方酒店:

@H_502_5@value.official;

要么

@H_502_5@obj[0]['@attr']['official'];

要么

@H_502_5@obj[0]['@attr'].official;

编辑:正如Jonathan所指出的,您发布的JSON结构存在问题,我建议您使用像JSONLint这样的工具验证您的JSON.

但我认为你的意思是这样的:

@H_502_5@var obj = { "image": [{ "url": "http:\/\/www.last.fm\/music\/Undefined\/+images\/3040021","format": "jpg","sizes": [{ "#text": "http:...jpg","name": "original","width": "397","height": "397" },{ "#text": "http:...jpg","name": "large","width": "126","height": "126" } ],"@attr": { "official": "yes" } }] };

使用该JSON结构,您可以通过以下方式迭代它:

@H_502_5@$.each(obj.image,function () { alert(this['@attr'].official); });
原文链接:https://www.f2er.com/jquery/428847.html

猜你在找的jQuery相关文章