使用underscore的template自定义模板

underscore的template()是一个十分重要的函数,该函数能够解析3种模板标签,分别以下:javascript

template() 函数模板标签html

模板标签 功能
<% %> 标签中包含的一般是Javascript代码,在页面渲染数据时执行
<%=  %> 标签中包含的一般是变量名、函数名、对象属性、执行时直接展示调用后的数据
<%-  %> 标签在输出数据时,能将HTML标记转成经常使用字符串形式,以免代码的攻击


调用格式 : _.template(templateString,[data],[settings])java

其中,参数templateString就是模板标签,可选参数data为渲染的数据,可选参数settings为自定义模板标签的字符格式,好比能够将<% %> 修改成 {% %} 格式ajax

 

简单示例以下:api

<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>

结果显示以下:函数

相关文章
相关标签/搜索