[英]Data template at backbone.js
请告诉我,如果有嵌套数据,如何在Backbone.js中创建模板。
数据示例:
var questions = [
{
id: 0,
question: [
{
id: 101,
text: 'What is your name?',
},
{
id: 102,
text: 'What is your lastname?',
},
{
id: 103,
text: 'What is yout sex?',
},
{
id: 104,
text: 'How old are you?',
},
]
}
];
以及用于输出的html代码:
<div id="qu_0" class="questions"><div>
<p><input type="radio" rel="question" name="question_0" id="i101" value="101" /><label for="i101">What is your name?</label></p>
<p><input type="radio" rel="question" name="question_0" id="i102" value="102" /><label for="i102">What is your firstname?</label></p>
<p><input type="radio" rel="question" name="question_0" id="i103" value="103" /><label for="i103">What is your sex?</label></p>
<p><input type="radio" rel="question" name="question_0" id="i104" value="104" /><label for="i104">How old are you?</label></p>
<button type="button" name="next"><b>Answer</b></button>
</div></div>
我知道我应该得到这样的东西:
<script id="questionTemplate" type="text/template">
<div>
<p><input type="radio" rel="question" name="question_<%= id %>" id="i<%= q.id %>" value="<%= q.id %>" /><label for="i<%= q.id %>"><%= q.text %></label></p>
<button type="button" name="next"><b>Answer</b></button>
</div>
</script>
但是我不知道如何在模板中显示嵌套的问题数组。 请帮帮我。
您可以像这样遍历数组:
<script id="questionTemplate" type="text/template">
<% for(var question in questions) { %>
<div id="qu_<%= question.id %>" class="questions"><div>
<% for(var q in questions,question) { %>
<p><input type="radio" rel="question" name="question_<%= q.id %>" id="i<%= q.id %>" value="<%= q.id %>" /><label for="i<%= q.id %>"><%= q.text %></label></p>
<% } %>
</div></div>
<% } %>
<button type="button" name="next"><b>Answer</b></button>
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.