js模版引擎handlebars.js实用教程??循环中使用索引_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 12:07:13
原创
1714人浏览过

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

 

 

     序号是指:在循环过程中,当前循环的索引,说白了,就是当前为第几次循环,一般从0开始,Handlebars.js中也是如此。

     有什么用呢?最常见的是在显示table的时候,给每行加一个序号,清晰的展示出页面上共有多少条记录,如上边的例子。

     除此之外,小菜为了在循环中区分不同的id,恰好需要一个序号,确保id不重复,用过bootstrap的童鞋应该知道,好多事件可以通过id定位,例如Listgroup控件。

卡奥斯智能交互引擎
卡奥斯智能交互引擎

聚焦工业领域的AI搜索引擎工具

卡奥斯智能交互引擎 36
查看详情 卡奥斯智能交互引擎

立即学习前端免费学习笔记(深入)”;

     废话少说,在Handlebars.js中,可以通过{{@index}}来获取当前的索引,也就是说@index这个变量就代表了当前索引。

     在上边的例子里,table的序号从0开始不太好,于是注册了一个Helper,将索引+1。

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号