【发布时间】:2020-12-03 18:51:38
【问题描述】:
我只能从 JSRender 的对象数组中渲染第一个对象。如何迭代所有对象?
{{for #data}} 仅显示 data 数组中的第一个对象。
var data = [{
"id": "15",
"name": "Jane Doe",
"value": null
}, {
"id": "6",
"name": "John Smith",
"value": "123-456-7890"
}, {
"id": "6",
"name": null,
"value": "223-456-7890"
}]
Codepen:https://codepen.io/ryanmac/pen/ZEWQMNV
HTML:
<div id="result"></div>
<script id="theTmpl" type="text/x-jsrender">
<table><tbody>
{{for #data}}
<tr><td><b>name:</b> {{:name}}</td><td>{{:value}}</td></tr>
{{/for}}
</tbody></table>
JS:
var data = [{
"id": "15",
"name": "Jane Doe",
"value": null
}, {
"id": "6",
"name": "John Smith",
"value": "123-456-7890"
}, {
"id": "6",
"name": null,
"value": "223-456-7890"
}];
var template = $.templates("#theTmpl");
var htmlOutput = template.render(data);
$("#result").html(htmlOutput);
输出:
姓名:简·多伊
其他行去哪儿了?我该如何调试?
【问题讨论】:
-
也许现在删除这个问题是个好主意,因为它是一个简单的无关错误,所以对于想要了解在 JsRender 中渲染数组的其他人来说没有用...
标签: javascript jsrender jsviews