【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
underscore的template()是一个十分重要的函数,该函数可以解析3种模板标签,分别如下:
template() 函数模板标签
模板标签 | 功能 |
<% %> | 标签中包含的通常是Javascript代码,在页面渲染数据时执行 |
<%= %> | 标签中包含的通常是变量名、函数名、对象属性、执行时直接展现调用后的数据 |
<%- %> | 标签在输出数据时,能将HTML标记转成常用字符串形式,以避免代码的攻击 |
调用格式 : _.template(templateString,[data],[settings])
其中,参数templateString就是模板标签,可选参数data为渲染的数据,可选参数settings为自定义模板标签的字符格式,比如可以将<% %> 修改为 {% %} 格式
简单示例如下:
<div id="test"></div>
<script type="text/template" id="testTpl">
<% _.each(categorys, function (item) { %>
<div>
<%= item.categoryName %>
</div>
<% }); %>
</script>
<script type="text/javascript">
var categorys;
$.ajax({
url : "http://ndapi.bestinfoods.com/item/get/topsimplecategorys",
type : "GET",
dataType : "JSON",
success : function(data){
categorys = data.data.categorys;
var testData = _.template($("#testTpl").html(),categorys);
$("#test").html(testData);
}
})
</script>
结果显示如下:
来源:oschina
链接:https://my.oschina.net/u/2380634/blog/730745