<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="./css/style.css">
<link rel="stylesheet" href="./css/xu.css" />
<script src="./js/rem.js"></script>
<script src="./js/jquery-1.7.2.min.js"></script>
<script src="js/template.js"></script>
<script src="./js/xu.js"></script>
<style>
html,
body {
background-color: #f3f5f7;
margin:0 auto;
padding:0;
}
</style>
</head> <body>
<ul class="xu1"><li class="xu">创建者徐文龙 点击我</li></ul>
<br />
<div class="xu2"></div>
</body>
</html> <script type="text/html" id="couponTitle">
{{each data as value i}}
<ul class="divv">
<li class="xu">我的名字是:{{value.username}}</li>
<li class="xu">我的数学成绩是:{{value.math}}</li>
<li class="xu">我的英语成绩是:{{value.english}}</li>
<li class="xu">我的理综成绩是:{{value.summary}}</li>
<li class="xu">我的语文成绩是:{{value.chinese}}</li>
{{include 'scoreTemplate' value }}
</ul>
{{/each}}
</script>
<script id="scoreTemplate" type="text/html">
<ul class="xuxu">
{{each limian as value i}}
<li>加分项 {{value.three}}</li>
<li>分数{{value.these}}</li>
{{/each}}
</ul>
</script>

这是html文件

 $(function() {
$('.xu1').on('click', '.xu', function() {
$.ajax({
type: 'get',
url: './xu.json',
dataType: 'json', success: function(data) {
console.log(data);
var html = template('couponTitle', data);
$('.xu2').html(html);
},
error: function(data) {
console.dir(data);
$("#info").html("服务器发生错误");
}
});
})
})

这是js文件 包含ajax的请求和arttamplate的模板的使用

 {
"data": [
{
"username": "张三",
"chinese": "138",
"math": "120",
"english": "80",
"summary": "250",
"limian": [
{
"three": "国家二级运动员",
"these": "40"
}, {
"three": "奥赛一等奖",
"these": "30"
}
]
}, {
"username": "李四",
"chinese": "120",
"math": "60",
"english": "87",
"summary": "120"
}
]
}

上面的是json数据 我制作的假数据 可以实现返回数据 目前在hbuilder里面可以直接使用 但是有些编辑器里面不能直接使用 ,hbuilder有后台服务器一部分功能,在hbuilder里面可以直接打开. 直接用浏览器不能实现效果. 除非需要配置服务器.

核心的代码在于 {{include 'scoreTemplate' value }} 记住一定是value 不是data.value 不然就无法实现效果. scoreTemplate是另一个模板的id 一定要一致.

最终实现的效果如下

arttemplate模板引擎有假数据返回数据多层内嵌的渲染方法的更多相关文章

  1. artTemplate模板引擎学习实战

    在我的一篇关于智能搜索框异步加载数据的文章中,有博友给我留言,认为我手写字符串拼接效率过低,容易出错.在经过一段时间的摸索和学习之后,发现现在拼接字符串的方法都不在是自己去书写了,而是使用Javasc ...

  2. Node学习之(第三章:art-template模板引擎的使用)

    前言 大家之前都有使用过浏览器中js模板引擎,其实在Node.js中也可以使用模板引擎,最早使用模板引擎的概念是在服务端新起的. art-template art-template是一款高性能的Jav ...

  3. koa art-template模板引擎的使用

    art-template 模板引擎介绍 art-template 是一个简约.超快的模板引擎. 它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行 性能,并且同 ...

  4. Express 中配置使用 art-template模板引擎

    art-template 官网 https://aui.github.io/art-template/ 安装: npm install --save art-template npm install ...

  5. artTemplate模板引擎

    artTemplate模板引擎         <li>索引 {{i + 1}} :{{value}}</li>     {{/each}} </ul> </ ...

  6. 第115天:Ajax 中artTemplate模板引擎(一)

    一.不分离与分离的比较 1.前后端不分离,以freemarker模板引擎为例,看一下不分离的前后端请求的流程是什么样的? 从上图可以看出,前后端开发人员的工作耦合主要在(3)Template的使用.后 ...

  7. Art-Template模板引擎(原生写法与简洁写法)

    模板引擎:把js数据转换成html需要的页面,这就是模板引擎需要做的事     • native原生语法     1. 准备数据     2. 把数据转化成html格式的字符串 使用模板引擎 artT ...

  8. ajax配合art-template模板引擎的使用

    最近才接触js的模板引擎听说相比以前使用的js foreach加载后台返回的json数据简便很多而且效率方面也很不错.今天自己玩了一下 后台使用的是.net mvc,数据库脚本就不提供了,返回的Jso ...

  9. art-template模板引擎高级使用

    一.结合express的基本使用 // npm下载express/art-template/express-art-tempalte,并且加载 var express=require('express ...

随机推荐

  1. YTU 1055: 输入字符串以及输出

    1055: 输入字符串以及输出 时间限制: 1 Sec  内存限制: 128 MB 提交: 694  解决: 476 题目描述 编写一函数,由实参传来一个字符串,统计此字符串中字母.数字.空格和其它字 ...

  2. iOS——多线程编程详细解析

    基本定义: 程序:由代码生成的可执行应用.(例如QQ.app) 进程:一个正在运行的程序可以看做是一个进程. (例如:正在运行的QQ 就是一个进程),进程拥有独立运行所需要的全部资源. 线程: 程序中 ...

  3. Silverlight实用窍门系列:2.Silverlight动态加载外部XML指定地址的WebService---(动态加载外部XML文件中指定的WebService地址)【附带实例源码】

    接上节所讲的,Silverlight可以加载外部的XML文件里面的内容,那么我们可不可以在外部XML里面配置一个WebService地址,并且以此加载这个地址来动态加载WebService呢?这样子就 ...

  4. Oracle dbf文件删除后,启动服务ORA-01157问题

    有一个数据库硬盘空间满了,查看发现一个dbf超大,并且不在规定的路径下,知道是一个非重要数据文件,于是删除. 后来重启数据库时, SQL> startupORACLE instance star ...

  5. OpenCV坐标系与操作像素的四种方法

    像素是图像的基本组成单位,熟悉了如何操作像素,就能更好的理解对图像的各种处理变换的实现方式了. 1.at方法 第一种操作像素的方法是使用"at",如一幅3通道的彩色图像image的 ...

  6. css画三角的原理

    当我们设置一个div其width与height为100px,并且设置其四边框的宽度为100px,且分别设置其颜色后,我们可以看到如下的一张图片 此时如果设置这个div的height为0的话,其他不变, ...

  7. jsp实现文件上传(一)用jspSmartUpload组件实现文件上传

    java类(ImageUtil.java) import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import ...

  8. Windows远程服务器不能复制粘贴

    操作步骤: 在服务器上打开任务管理器,查看进程,有 rdpclip.exe 进程,关闭此进程: 然后 开始->运行->rdpclip.exe 重新运行此程序,恢复正常.

  9. emacs版本差异(转载)

    emacs23 就是原装的,由 gnu 发布的 emacs.emacs-lucid 是由 ubuntu 调整过的.emacs-nox 是不带 x system 的 emacs 版本.除非只在终端下用, ...

  10. 704. Binary Search

    Given a sorted (in ascending order) integer array nums of n elements and a target value, write a fun ...