简体   繁体   English

如何遍历 JSRender 中的对象数组?

[英]How can I iterate over an array of objects in JSRender?

I can only render the first object from an array of objects in JSRender.我只能从 JSRender 中的对象数组中渲染第一个 object。 How can I iterate all of the objects?如何迭代所有对象?

{{for #data}} only shows first object from the data array. {{for #data}}仅显示data数组中的第一个 object。

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代码笔: https://codepen.io/ryanmac/pen/ZEWQMNV

HTML: 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: 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);

Output: Output:

name: Jane Doe姓名:简·多伊

Where did the other rows go?其他行 go 在哪里? How can I debug this?我该如何调试呢?

Its because you did not close the <script> tag这是因为你没有关闭<script>标签

<script id="theTmpl" type="text/x-jsrender">
 ....
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM