[英]Looping json object key => array
我在拉一个json对象,这是$.parseJSON
输出的结果。 我了解它需要一个处理程序来帮助它,但不能确定帮助程序中包含什么。 读取其他用户的问题后,由于具有恒定的密钥,他们似乎能够跳过下一个箍,不幸的是,在我看来,这总是不同的。
杰森输出
[
{
"High blood pressure?": [
"no",
"string"
]
},
{
"Cancer?": [
"no",
"string"
]
},
{
"Asthma or a breathing disorder?": [
"no",
"string"
]
}
]
环
{{#each screen_data}}
<tr>
<td class="bold">{{this}}</td>
</tr>
{{/each}}
[Object object][Object object][Object object]......
您可以在下面尝试该小提琴。 它将为您提供JSON数据中的所有密钥
http://jsfiddle.net/tariqulazam/SjugS/
var data= [
{
"High blood pressure?": [
"no",
"string"
]
},
{
"Cancer?": [
"no",
"string"
]
},
{
"Asthma or a breathing disorder?": [
"no",
"string"
]
}
];
for (var key in data) {
for (var item in data[key]) {
alert(item);
}
}
这是因为您有一个对象数组,这就是您要告诉模板写出的对象。 似乎您想在对象的根上写出唯一的属性,这是一个问题。
尝试这个:
{{#each screen_data}}
<tr>
<td class="bold">{{this[0]}}</td>
</tr>
{{/each}}
我必须说,那是一个奇怪的JSON结构。 通常,将对象属性名称用作此类数据的载体被认为是较差的形式。
编辑:我建议将结构更改为可以更好地表示您的数据的结构,如下所示:
[{
question: "High blood pressure?",
answers: [
"no",
"string"
]
},
{
questions: "Cancer?",
answers: [
"no",
"string"
]
},
{
question: "Asthma or a breathing disorder?",
answers: [
"no",
"string"
]
}]
然后,这意味着您的模板将如下所示:
{{#each screen_data}}
<tr>
<td class="bold">{{this.question}}</td>
</tr>
{{/each}}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.