zoukankan      html  css  js  c++  java
  • js模版引擎handlebars.js实用教程——each-基本循环使用方法

    返回目录

     1 <!DOCTYPE html>
     2 <html>
     3   <head>
     4     <META http-equiv=Content-Type content="text/html; charset=utf-8">
     5     <title>each-基本循环使用方法 - by 杨元</title>
     6   </head>
     7   <body>
     8     <h1>each-基本循环使用方法</h1>
     9     <!--基础html框架-->
    10     <table>
    11       <thead>
    12         <tr>
    13           <th>姓名</th>
    14           <th>性别</th>
    15           <th>年龄</th>
    16         </tr>
    17       </thead>
    18       <tbody id="tableList">
    19         
    20       </tbody>
    21     </table>
    22     
    23     <!--插件引用-->
    24     <script type="text/javascript" src="script/jquery.js"></script>
    25     <script type="text/javascript" src="script/handlebars-1.0.0.beta.6.js"></script>
    26     
    27     <!--Handlebars.js模版-->
    28     <!--Handlebars.js模版放在script标签中,保留了html原有层次结构,模版中要写一些操作语句-->
    29     <!--id可以用来唯一确定一个模版,type是模版固定的写法-->
    30     <script id="table-template" type="text/x-handlebars-template">
    31       {{#each student}}
    32         <tr>
    33           <td>{{name}}</td>
    34           <td>{{sex}}</td>
    35           <td>{{age}}</td>
    36         </tr> 
    37       {{/each}}
    38     </script>
    39     
    40     <!--进行数据处理、html构造-->
    41     <script type="text/javascript">
    42       $(document).ready(function() {
    43         //模拟的json对象
    44         var data = {
    45                     "student": [
    46                         {
    47                             "name": "张三",
    48                             "sex": "0",
    49                             "age": 18
    50                         },
    51                         {
    52                             "name": "李四",
    53                             "sex": "0",
    54                             "age": 22
    55                         },
    56                         {
    57                             "name": "妞妞",
    58                             "sex": "1",
    59                             "age": 18
    60                         }
    61                     ]
    62                 };
    63         
    64         //注册一个Handlebars模版,通过id找到某一个模版,获取模版的html框架
    65         //$("#table-template").html()是jquery的语法,不懂的童鞋请恶补。。。
    66         var myTemplate = Handlebars.compile($("#table-template").html());
    67         
    68         //将json对象用刚刚注册的Handlebars模版封装,得到最终的html,插入到基础table中。
    69         $('#tableList').html(myTemplate(data));
    70       });
    71     </script>
    72   </body>
    73 </html>

         通过阅读本例,读者已经掌握Handlebars.js一个重要特性:循环。#each可以理解成循环命令,循环的是json对象中的student属性。对于每次循环,都可以读出里边的name、sex、age属性。

  • 相关阅读:
    RPC细谈
    RPC浅谈
    动态规划
    libco 的定时器实现: 时间轮
    一次HTTP请求的完整过程——协议篇(DNS、TCP、HTTP)
    多个CPU、多核CPU以及超线程(Hyper-Threading)
    Linux下which、whereis、locate、find命令的区别
    warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
    使用OutputDebugString输出调试信息
    VS或windows用代码产生GUID
  • 原文地址:https://www.cnblogs.com/iyangyuan/p/3471300.html
Copyright © 2011-2022 走看看