zoukankan      html  css  js  c++  java
  • handlebars使用DEMO

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>handlebars_v2.0_demo</title>
    <script type="text/javascript" src="js/jquery-1.8.2.min.js"></script>
    <script type="text/javascript" src="js/handlebars-v2.0.0.js"></script>
    </head>
    
    <div id="demo">
    
    </div>
    
    
    
    <script id="user-template" type="text/x-handlebars-template">
    	<h1>{{time}}</h1>
    	{{#each user}}
    		<p>
    			{{#if name}}
    				{{@index}}. 
    				姓名:{{name}}
    				年龄:{{age}}
    				成年:{{Adult age}}
    				{{#Compare age 18 }}
    				大于等于18岁
    				{{else}}
    				小于18岁
    				{{/Compare}}
    				记录时间:{{../../time}}			
    			{{/if}}
    
    		</p>
    	{{/each}}
    </script>
    <script>
    $(function(){
    	var data = {
    			user:[{
    				name:"sky",
    				age:28
    				},{
    				name:"json",
    				age:10
    				},{
    				age:2
    				},{
    				name:"joy",
    				age:18
    				}],
    			time:"2014-12-26"
    		}
    	var myTemplate = Handlebars.compile($("#user-template").html());
    	Handlebars.registerHelper("Adult",function(age){return (age >= 18) ? "成年" : "未成年";});
    	Handlebars.registerHelper("Compare",function(i1,i2,options){if(i1>=i2) {return options.fn(this); }else {return options.inverse(this);}});
    	$("#demo").html(myTemplate(data));
    })
    </script>
    
    
    <div id="demo2">
    
    </div>
    <script id="class-template" type="text/x-handlebars-template">
    	{{#each this}}
    		<dl>
    			<dt>{{class}} 共有{{group.count}}个小组 班长:{{student.[0].name}}</dt>
    			{{#with student}}
    			{{#each this}}
    			<dd>{{name}}</dd>
    			{{/each}}
    			{{/with}}
    		</dl>
    	{{/each}}
    </script>
    <script>
    $(function(){
    	var data2 = [
    		{
    			class:"一年级",
    			student:[{
    					name:"王晓飞"
    				},{
    					name:"陈扇"
    				},{
    					name:"理查德"
    				}],
    			group:{
    				count:6
    				}
    			
    		},
    		{
    			class:"二年级",
    			student:[{
    					name:"朱暖"
    				},{
    					name:"张坚庭"
    				},{
    					name:"刘海得"
    				}],
    			group:{
    				count:8
    				}
    		}]
    	var myTemplate = Handlebars.compile($("#class-template").html());
    	$("#demo2").html(myTemplate(data2));
    })
    </script>
    
    
    <div id="demo3">
    
    </div>
    <script id="class2-template" type="text/x-handlebars-template">
    	{{#each this}}
    		<dl>
    			<dt>{{class}}</dt>
    			{{#with student}}
    			{{#each this}}
    			<dd>{{this}}</dd>
    			{{/each}}
    			{{/with}}
    		</dl>
    	{{/each}}
    </script>
    <script>
    $(function(){
    	var data2 = [
    		{
    			class:"一年级",
    			student:[
    					"王晓飞",
    					"陈扇",
    					"理查德"
    				]
    		},
    		{
    			class:"二年级",
    			student:[
    					"朱暖",
    					"张坚庭",
    					"刘海得"
    				]
    		}]
    	var myTemplate = Handlebars.compile($("#class2-template").html());
    	$("#demo3").html(myTemplate(data2));
    })
    </script>
    <body>
    </body>
    </html>
    

      

    点击下载:

    js_demo_handlebars.rar

  • 相关阅读:
    软退回和硬退回的区别和联系
    十家国内知名的EDM服务提供商
    2018年第一记:EDM策略分享-EDM营销的策略分析
    分享几个目前研究出来的邮件不进垃圾箱技巧
    如何快速增加邮件列表用户数量
    EDM数据营销之电商篇| 六大事务性邮件,环环相扣打造极致用户体验!
    如何整合线上和线下营销进行深度交融
    品牌logo在EDM数据营销中的运用
    2017年内容营销如何提高ROI转化率
    营销必读:2017移动应用的五大营销趋势
  • 原文地址:https://www.cnblogs.com/hack0573/p/4187256.html
Copyright © 2011-2022 走看看