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

 1 <!DOCTYPE html>
 2 <html lang="en">
 3
 4     <head>
 5         <meta charset="UTF-8">
 6         <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 7         <title>Document</title>
 8         <link rel="stylesheet" href="./css/style.css">
 9         <link rel="stylesheet" href="./css/xu.css" />
10         <script src="./js/rem.js"></script>
11         <script src="./js/jquery-1.7.2.min.js"></script>
12         <script src="js/template.js"></script>
13         <script src="./js/xu.js"></script>
14         <style>
15             html,
16             body {
17                 background-color: #f3f5f7;
18                 margin:0 auto;
19                 padding:0;
20             }
21         </style>
22     </head>
23
24     <body>
25         <ul class="xu1"><li class="xu">创建者徐文龙 点击我</li></ul>
26         <br />
27         <div class="xu2"></div>
28     </body>
29 </html>
30
31 <script type="text/html" id="couponTitle">
32     {{each data as value i}}
33     <ul class="divv">
34     <li class="xu">我的名字是:{{value.username}}</li>
35     <li class="xu">我的数学成绩是:{{value.math}}</li>
36     <li class="xu">我的英语成绩是:{{value.english}}</li>
37     <li class="xu">我的理综成绩是:{{value.summary}}</li>
38     <li class="xu">我的语文成绩是:{{value.chinese}}</li>
39         {{include ‘scoreTemplate‘ value }}
40     </ul>
41     {{/each}}
42 </script>
43 <script id="scoreTemplate" type="text/html">
44     <ul class="xuxu">
45     {{each limian as value i}}
46     <li>加分项 {{value.three}}</li>
47     <li>分数{{value.these}}</li>
48     {{/each}}
49     </ul>
50 </script>

这是html文件

 1 $(function() {
 2     $(‘.xu1‘).on(‘click‘, ‘.xu‘, function() {
 3         $.ajax({
 4             type: ‘get‘,
 5             url: ‘./xu.json‘,
 6             dataType: ‘json‘,
 7
 8             success: function(data) {
 9                 console.log(data);
10                 var html = template(‘couponTitle‘, data);
11                 $(‘.xu2‘).html(html);
12             },
13             error: function(data) {
14                 console.dir(data);
15                 $("#info").html("服务器发生错误");
16             }
17         });
18     })
19 })

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

 1 {
 2     "data": [
 3         {
 4             "username": "张三",
 5             "chinese": "138",
 6             "math": "120",
 7             "english": "80",
 8             "summary": "250",
 9             "limian": [
10                 {
11                     "three": "国家二级运动员",
12                     "these": "40"
13                 }, {
14                     "three": "奥赛一等奖",
15                     "these": "30"
16                 }
17             ]
18         }, {
19             "username": "李四",
20             "chinese": "120",
21             "math": "60",
22             "english": "87",
23             "summary": "120"
24         }
25     ]
26 }

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

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

最终实现的效果如下

时间: 2024-12-27 23:02:36

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

artTemplate模板引擎学习实战

在我的一篇关于智能搜索框异步加载数据的文章中,有博友给我留言,认为我手写字符串拼接效率过低,容易出错.在经过一段时间的摸索和学习之后,发现现在拼接字符串的方法都不在是自己去书写了,而是使用Javascript引擎.而javascript引擎的实质就是帮我们把带有JavaScript代码的伪THTML语句编译为HTML. 如果有不了解的朋友,可以前往这两篇文章: 淘宝购物车页面 PC端和移动端实战 淘宝购物车页面 智能搜索框Ajax异步加载数据 源码地址: GitHub:Uncle-Keith 回

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

前言 大家之前都有使用过浏览器中js模板引擎,其实在Node.js中也可以使用模板引擎,最早使用模板引擎的概念是在服务端新起的. art-template art-template是一款高性能的JavaScript 模板引擎,不仅可以在浏览器(前端)使用,同时也可以在Node中使用. GitHub地址:art-template 文档:官方中文 本章节我们来探讨下Node中使用art-template模板引擎生成一个标准的HTML文档. 主体 art-template原理就是将一个字符串数据按照模

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

先安装需要使用的包 cnpm install --save art-templatecnpm install --save express-art-template 配置(官网案例) var express = require('express') var express = require('express'); var app = express();//配置使用art-template模板引擎//第一个参数表示,当渲染以 .art 结尾时使用art-template模板引擎//expres

art-template模板引擎高级使用

一.结合express的基本使用 // npm下载express/art-template/express-art-tempalte,并且加载 var express=require('express'); var path=require('path'); var app=express(); // 配置(express-art-template是express来整合art-templatedao的,虽然不用加载art-template,但是也必须安装) app.engine('html',r

artTemplate模板引擎的源码拜读

最初接触的模板引擎还是基于node的ejs,当时觉得很神奇原来还可以这么玩,后来随着学习的深入,使用过jade,doT等,当然还有一些比较火的诸如juicer.underscore还没有深入接触,直到今年上半年由于项目需要就想着要不试试腾讯的artTemplate,感觉牛逼也吹的挺响的.开始了解后,觉得它比我之前使用过的jade.doT都好用,调试神马的也方便很多,采用预编译的方式也让性能非常优越. 其实看了源码后简单的总结出来就是这么一句话:就是先获取html中对应的id下得innerHTML

防止查询数据返回数据行为零引起的逻辑判断重复或抛出异常

以下代码以操作ORACLE数据库为例 1.返回DataSet数据,若查询返回行数为零,返回null 1 /// <summary> 2 /// 执行查询语句,返回DataSet 3 /// </summary> 4 /// <param name="SQLString">查询语句</param> 5 /// <returns>DataSet</returns> 6 public static DataSet Que

artTemplate模板引擎源码拜读

最初接触的模板引擎还是基于node的ejs,当时觉得很神奇原来还可以这么玩,后来随着学习的深入,使用过jade,doT等,当然还有一些比较火的诸如juicer.underscore还没有深入接触,直到今年上半年由于项目需要就想着要不试试腾讯的artTemplate,感觉牛逼也吹的挺响的.开始了解后,觉得它比我之前使用过的jade.doT都好用,调试神马的也方便很多,采用预编译的方式也让性能非常优越. 其实看了源码后简单的总结出来就是这么一句话:就是先获取html中对应的id下得innerHTML

artTemplate模板引擎

来源:http://blog.csdn.net/joyhen/article/details/21233525 编写模板 使用一个type="text/html"的script标签存放模板: <script id="test" type="text/html"> <h1><%=title%></h1> <ul> <%for(i = 0; i < list.length; i

art-template模板引擎循环嵌套

①首先引入 <script src="js/art-template" type="text/javascript" charset="utf-8"></script> ②确定要插入的位置  <div id="my"></div> ③新建一个 script标签   注意标签的type   type="text/html" ④新建一个 script标签 <