我正在通过API服务传递JSON对象。我对JSON的格式没有任何控制权。但它是一个有效的JSON对象:
{
"Template" : {
"Parameters" : {
"Name" : "Test",
"Version" : "1.0"
},
"Fields" : {
"Field" : [{
"Prompt" : "Last Name:"
}, {
"Prompt" : "First Name:"
}, {
"Prompt" : "Middle Name"
}, {
"Prompt" : "ID Number:"
}
]
},
"Captures" : {
"Capture" : [{
"Prompt" : "Picture"
}, {
"Prompt" : "Picture from file"
}, {
"Prompt" : "Signature"
}
]
}
}
}
我需要做的是遍历对象中的Fields列表,以便我可以从那里显示值。在这个例子的情况下,我试图从字段中打印一个提示值列表。
http://jsfiddle.net/toddhd/0wbfpxkj/9/
<div ng-repeat="item in template.Fields.Field">
{{item.Prompt}}
</div>
通过查看上面的JSFiddle可以更好地解释这一点。
我想要做的只是使用点/点表示法获取字段列表,例如:
template.Fields.Field
但这对我不起作用。在这个例子中,我还制作了一系列ng-repeats,它们逐个循环遍历每个集合。这可以产生并产生预期的结果,但它是冗长和丑陋的。
我确信我只是误解了JSON对象本身的结构,或者可能是正确的点/点符号。但我似乎无法弄明白。你能看看我告诉我哪里出错了吗?
谢谢
答案 0 :(得分:4)
它只是错过了另一个Template
。它应该是template.Template.Fields.Field
。
你的HTML应该是这样的:
<div ng-repeat="item in template.Template.Fields.Field">{{item.Prompt}}</div>