我有一个JSON字符串:
{
"items": [
{"name": "red" },
{"name": "blue" }
],
"test" : {
"items" :[
{ "name" : "Hello" },
{ "name" : "World" }
]
}
}
如何打印
<li>Hello</li>
<li>World</li>
我尝试使用下面的模板,但它不起作用。它改为打印“红色和蓝色”。我没有权限更改JSON字符串,我只能操纵模板。
{{#test}}
{{#items}}
<li>{{name}}</li>
{{/items}}
{{/test}}
答案 0 :(得分:3)
出于某种原因,以下代码:
<head>
<script src="https://github.com/andyet/ICanHaz.js/raw/master/ICanHaz.js"></script>
<script>
function clicked()
{
ich.addTemplate("user", "{{#test}} {{#items}} <li>{{name}}</li>\n {{/items}} {{/test}}");
document.getElementById("result").innerHTML = ich.user(userData);
}
var userData = {
"items": [
{"name": "red" },
{"name": "blue" }
],
"test" : {
"items" :[
{ "name" : "Hello" },
{ "name" : "World" }
]
}
};
</script>
</head>
<body>
<button onclick="clicked()">CLICK</button>
<ul id="result"><li>Result</li></div>
</body>
准确地给了我:
所以,你的模板应该是正确的。