zoukankan      html  css  js  c++  java
  • 使用jQuery+huandlebars循环遍历中使用索引

    兼容ie8(很实用,复制过来,仅供技术参考,更详细内容请看源地址:http://www.cnblogs.com/iyangyuan/archive/2013/12/12/3471227.html)

    <!DOCTYPE html>
    <html>
      <head>
        <META http-equiv=Content-Type content="text/html; charset=utf-8">
        <title>关于循环中索引的使用 - by 杨元</title>
      </head>
      <body>
        <h1>关于循环中索引的使</h1>
        <!--基础html框架-->
        <table>
          <thead>
            <tr>
              <th>序号</th>
              <th>姓名</th>
              <th>性别</th>
              <th>年龄</th>
            </tr>
          </thead>
          <tbody id="tableList">
            
          </tbody>
        </table>
        
        <!--插件引用-->
        <script type="text/javascript" src="script/jquery.js"></script>
        <!--注意!这个例子用的是新版本handlebars,旧版本不支持-->
        <script type="text/javascript" src="script/handlebars-v1.3.0.js"></script>
        
        <!--Handlebars.js模版-->
        <!--Handlebars.js模版放在script标签中,保留了html原有层次结构,模版中要写一些操作语句-->
        <!--id可以用来唯一确定一个模版,type是模版固定的写法-->
        <script id="table-template" type="text/x-handlebars-template">
          {{#each student}}
          <tr>
            <td>{{addOne @index}}</td>
            <td>{{name}}</td>
            <td>{{sex}}</td>
            <td>{{age}}</td>
          </tr>
          {{/each}}
        </script>
        
        <!--进行数据处理、html构造-->
        <script type="text/javascript">
          $(document).ready(function() {
            //模拟的json对象
             var data = {
                          "student": [
                              {
                                  "name": "张三",
                                  "sex": "0",
                                  "age": 18
                              },
                              {
                                  "name": "李四",
                                  "sex": "0",
                                  "age": 22
                              },
                              {
                                  "name": "妞妞",
                                  "sex": "1",
                                  "age": 19
                              }
                          ]
                      };
            
            //注册一个Handlebars模版,通过id找到某一个模版,获取模版的html框架
            //$("#table-template").html()是jquery的语法,不懂的童鞋请恶补。。。
            var myTemplate = Handlebars.compile($("#table-template").html());
            
            //注册一个Handlebars Helper,用来将索引+1,因为默认是从0开始的
            Handlebars.registerHelper("addOne",function(index,options){
              return parseInt(index)+1;
            });
            
            //将json对象用刚刚注册的Handlebars模版封装,得到最终的html,插入到基础table中。
            $('#tableList').html(myTemplate(data));
          });
        </script>
      </body>
    </html>
  • 相关阅读:
    markdown的使用说明
    iOS开发关于真机—App发布证书和调试证书配置
    iOS开发UI篇—屏幕适配autoResizing autoLayout和sizeClass图文详解
    iOS开发UI篇—模仿ipad版QQ空间登录界面
    iOS开发UI篇—iPad开发中得modal介绍
    iOS开发UI篇—popoverController使用注意
    iOS开发UI篇—popoverController简单介绍
    C语言:二十四 防止头文件被重复包含#ifndef #define #endif
    C语言:二十五 函数中的static例子
    C语言:C运算符优先级
  • 原文地址:https://www.cnblogs.com/lengyue0030/p/7423676.html
Copyright © 2011-2022 走看看