handlebars,each循环里面套each循环

handlebars可以用each自动进行循环,下面介绍一下each循环里面套循环来着。

html代码

 1 !DOCTYPE html>
 2 <html>
 3   <head>
 4     <meta charset="utf-8">
 5     <title>handlebars循环套循环</title>
 6     <style media="screen">
 7       *{
 8         margin: 0;
 9         padding: 0;
10         list-style: none;
11       }
12       .time{
13         float:left;
14         width:100px;
15       }
16       .content{
17         float:left;
18         border-left:1px solid black;
19         width: 100px;
20         padding-left: 20px;
21         padding-bottom: 10px;
22       }
23       #dataList li{
24         clear: both;
25       }
26     </style>
27   </head>
28
29   <body>
30     <div>
31       <ul id="dataList">
32
33       </ul>
34     </div>
35     <!-- 引入jquery、handlebars的JS文件 -->
36     <script type="text/javascript" src="../js/jquery-1.8.3.min.js"></script>
37     <script type="text/javascript" src="../js/handlebars.min.js"></script>
38     <!-- 创建一个script标签,把type属性改为:text/x-handlebars-template -->
39     <script id="table-template" type="text/x-handlebars-template">
40       <!-- 把data的数据进行循环 -->
41       {{#each data}}
42         <li>
43           <div class="time">
44             <p>{{name}}</p>
45           </div>
46           <div class="content">
47             <!-- 把data:info里面的数据再次进行循环 -->
48             {{#each info}}
49             <!-- info里面多个数据,所以这里可以直接连续打印多个this -->
50             <p>{{this}}</p>
51             {{/each}}
52           </div>
53         </li>
54        {{/each}}
55   </script>
56
57   <script type="text/javascript" src="./index.js"></script>
58
59   </body>
60 </html>

index.js代码:

 1 // JSON数据
 2 var data = [
 3   {
 4      "name":"张三",
 5      "info":[
 6        "眼睛",
 7        "耳朵",
 8        "鼻子"
 9      ]
10    },{
11     "name":"李四",
12      "info":[
13        "眼睛",
14        "耳朵",
15        "鼻子"
16     ]
17  }];
18
19  // 封装一个函数,传进去三个值(填充的内容(script标签的id),(需要填充位置的id),(数据))
20  var fillTemplate = function(templateObj,contentObj,fillData){
21     var templateHtml = templateObj.html();
22     var template = Handlebars.compile(templateHtml);
23     contentObj.html(template(fillData));
24 };
25
26  fillTemplate($("#table-template"),$("#dataList"),{data:data});
时间: 2024-10-13 10:44:42

handlebars,each循环里面套each循环的相关文章

关于for 循环里 线程执行顺序问题

最近在做项目时遇到了 这样的需求 要在一个for循环里执行下载的操作, 而且要等 下载完每个 再去接着走循环.上网查了一些 觉得说的不是很明确.现在把我用到的代码 贴上 希望可以帮到有此需求的开发者        private Handler mHandler = new Handler() {               public void handleMessage(android.os.Message msg) {                       switch (msg.

关于在for循环里调用ajax时只能取到最后一个数据的bug的解决方法

首先,造成这中情况的原因在与ajax的异步请求机制,for循环的运行速度远大于ajax异步请求的速度,这就造成了ajax运行时,需要的在for循环里的参数已经运行到最后一个了,所以取到的都是最后一个参数数据. 解决方法:将ajax的请求封装成一个单独的方法,然后在for循环里调用该方法.

不要在foreach循环里进行元素的remove/add操作

不要在 foreach 循环里进行元素的 remove/add 操作.remove 元素请使用 Iterator 方式. 反例: public class ForeachTest { private List<String> list = new ArrayList<String>(); @Test public void forTest() { list.add("1"); list.add("2"); for(String temp :

for 循环里的i++

写代码的时间也不短了,今天看快速排序的算法的时候才去更深层次得理解... for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 (代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被执行之后执行 所以语句3的i++是在代码块执行之后加上的值, 所以一般情况下,for循环结束了,其实最后语句3又执行了一遍i又加了个1 亲测语句块里break退出循环则语句3不会执行 最后又衍生到,语句3中i++和++i的区别,值是一样的,但是在c++里

foreach循环里不能remove/add元素的原理

foreach循环 ? ?? foreach循环(Foreach loop)是计算机编程语言中的一种控制流程语句,通常用来循环遍历数组或集合中的元素.Java语言从JDK 1.5.0开始引入foreach循环.在遍历数组.集合方面,foreach为开发人员提供了极大的方便.通常也被称之为增强for循环. ? ?? 在日常开发中,foreach循环用的非常多,但是有一点要非常小心,就是不能在这个循环里对数组或者集合里的元素进行remove或者add操作,否则会抛出java.util.Concurr

php 使用自定义函数 在循环里判断闰年

<?php /** 使用自定义函数 在循环里判断闰年 **/ function is_runnian($year){ //自定义函数 if($year % 4 == 0 && $year % 100 != 0 || $year % 400 == 0) { return true; }else { return false; } } for($year=1500;$year<=2000;$year++) { if(is_runnian($year)) { echo $year.'

为什么阿里巴巴Java开发手册中强制要求不要在foreach循环里进行元素的remove和add操作?

在阅读<阿里巴巴Java开发手册>时,发现有一条关于在 foreach 循环里进行元素的 remove/add 操作的规约,具体内容如下: 错误演示 我们首先在 IDEA 中编写一个在 foreach 循环里进行 remove 操作的代码: import java.util.ArrayList; import java.util.List; public class ForEachTest { public static void main(String[] args) { List<S

Java问题记录——循环里的二次判断与状态更新

Java问题记录——循环里的二次判断与状态更新 摘要:本文主要记录了在循环操作时可能出现的问题. 问题重现 在使用循环结构时,如果使用了定时任务,或者代码会多次调用循环结构,可能会导致有些对象会被循环多次. 举例来说,如果有一个结账的代码,每五分钟会执行一次: 1 @Scheduled(cron = "0 0/5 * * * ?") 2 @Async 3 public void handle(){ 4 List<Customer> list = customerDao.li

循环嵌套,while循环,穷举迭代循环

一.循环嵌套 简单的就是说,在一个for循环里嵌入多个小for循环. 其中,在打矩形.三角形和乘法口诀表之类的题目中,大for循环一般表示的是行数,其余的小for循环式每一行中的内容. 二.while循环 1,格式 (1) 初始条件: while(循环条件) { 循环体: 状态改变: } 当循环体不满足循环条件时,才能跳出所处的for循环. (2) 初始条件: do { 循环体: 状态改变: } while(循环条件) 其表示才开始不管满不满足循环条件,限制性一次,如果不符合循环条件,就跳出循环