在下面的示例中,有人可以建议我的模板如何循环遍历JSON数据?
DEMO:http://jsfiddle.net/Seefeld/LbVEH/
{
"0": {
"Dosage": "25",
"Drug": "Indocin",
"Patient": "David",
"Date": "15/11/2012 14:29:14"
},
"1": {
"Dosage": "50",
"Drug": "Enebrel",
"Patient": "Sam",
"Date": "15/11/2012 14:29:14"
},
"2": {
"Dosage": "10",
"Drug": "Hydralazine",
"Patient": "Christoff",
"Date": "15/11/2012 14:29:14"
},
"3": {
"Dosage": "21",
"Drug": "Combivent",
"Patient": "Janet",
"Date": "15/11/2012 14:29:14"
},
"4": {
"Dosage": "100",
"Drug": "Dilantin",
"Patient": "Melanie",
"Date": "15/11/2012 14:29:14"
}
}
我在mustache.js
上看到的所有示例都假设您知道对象名称。
任何建议都非常感谢。
答案 0 :(得分:8)
您可以将data
转换为真正的数组(无论如何都应该这样):
var drugs = [];
for (var i = 0, drug; (drug = data[i]); ++i) {
drugs.push(drug);
}
var template = "{{#drugs}}<p>{{Drug}}</p>{{/drugs}}";
var html = Mustache.to_html(template, {drugs: drugs});
$(html).appendTo("#cnt");
或自己浏览数据:
var template = "<p>{{Drug}}</p>";
for (var i = 0, drug; (drug = data[i]); ++i) {
var html = Mustache.to_html(template, drug);
$(html).appendTo("#cnt");
}