我正在尝试使用HTML中的if
将变量设置为模板。问题是我无法看到我的模板,也没有日志中的任何错误。我可以看到元素在HTML中,但仍然无法看到它。
模板是:
<div class="list-group">
<div id="table_template">
<div id ="table"></div>
<script type="text/template" id="nextPage">
<% if (nextLink != "") { %>
<nav><ul class="pager"><li><a href="#" id="next_page" >Next</a></li> </ul> </nav>
<%}%>
</script>
</div>
</div>
</div>
和视图:
var template = _.template($('#nextPage').html());
view.$el.find('#nextPage').html(template(listSongs));
更新:如果我有脚本标记,看起来我无法看到它。
答案 0 :(得分:1)
使用脚本标记,以便浏览器不会将该片段呈现到整个DOM中。你这样做是假设脚本标签将打印到视图中但不会。您需要将其注入视图中。试试这个:
<div class="list-group">
<div id="table_template">
<div id ="table"></div><div id="nextPage"></div>
<script type="text/template" id="nextPageTemplate">
<% if (nextLink != "") { %>
<nav><ul class="pager"><li><a href="#" id="next_page" >Next</a></li> </ul> </nav>
<%}%>
</script>
</div>
</div>
然后在您看来它看起来像这样:
var template = _.template($('#nextPageTemplate').html());
view.$el.find('#nextPage').html(template(listSongs));
现在我不确定你的观点El是否是“列表组”(但我希望是这样)。