我有一个标签中有冒号的json数据(参见responsedata),我发现使用以下代码很难在Angular中访问它:
<li ng-repeat="i in items.autnresponse.responsedata | searchFor:searchString"> <p>{{i.autn:numhits}}</p> </li>
我一直收到这样的错误:Error: [$parse:syntax] Syntax Error: Token ':' is an unexpected token at column 7 of the expression [i.autn:numhits] starting at [:numhits]
.
JSON数据摘录:
"autnresponse": {
"action": {
"$": "QUERY"
},
"response": {
"$": "SUCCESS"
},
"responsedata": {
"autn:numhits": {
"$": "92"
},
"autn:totalhits": {
"$": "92"
},
"autn:totaldbdocs": {
"$": "188"
},
"autn:totaldbsecs": {
"$": "188"
},
有人知道怎么解决吗?
2条答案
按热度按时间bxfogqkk1#
我会假设我知道我的问题的答案从评论和张贴什么会是我的回应:
假设
JSON解析很好,但是代码无法访问结果数据结构中的某些内容
回答我
对字符串使用方括号表示法:
当变量中有属性名时,也可以使用相同的方法。使用相同的示例:
增编
对于Angular 模板,请尝试
gajydyqb2#
使用方括号像字典一样访问它,而不是使用点标记法。将
{{i.autn:numhits}}
替换为{{i['autn:numhits']}}
提醒一下,如果你想用双引号把autn:numhits括起来,你需要用html转义它们。