jQuery-jTemplate.js下载:http://jtemplates.tpython.com/ 
一 , 简单介绍

它是一个基于jQuery开发的javascript模板引擎。它主要的作用如下:

1. 通过JavaScript获取JSON形式的数据;

2. 获取一个HTML模板,与数据相结合,生成页面HTML。

二 , 快速上手

先来看一个简单的例子:

<script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="jquery-jtemplates.js"></script>

<script type="text/javascript">
   $(document).ready(function() {
    //初始化数据
    var data = {
     name: '用户列表',
     list_id: '编号89757',
     table: [
      {id: 1, name: 'Rain', age: 22, mail: },
      {id: 2, name: "皮特', age: 24, mail: },
      {id: 3, name: "卡卡', age: 20, mail: },
      {id: 4, name: "戏戏', age: 26, mail: },
      {id: 5, name: "一揪', age: 25, mail: }
     ]
    };
    // 附上模板
    $("#result1").setTemplateElement("template");
    // 给模板加载数据
    $("#result1").processTemplate(data);
   });
</script>

<!-- 模板内容 -->
<textarea id="template" style="display:none">
   <strong>{$T.name} : {$T.list_id}</strong>
   <table>
        <tr>
      <th>编号</th>
      <th>姓名</th>
                    <th>年龄</th>
      <th>邮箱</th>
    </tr>
    {#foreach $T.table as record}
    <tr>
      <td>{$T.record.id}</td>
      <td>{$T.record.name}</td>
                    <td>{$T.record.age}</td>
      <td>{$T.record.mail}</td>
    </tr>
    {#/for}
   </table>
</textarea>

<!-- 输出元素 -->
<div id="result1" ></div>

上面代码中,先导入了jQuery.js,然后导入jtemplates.js。

接下来新建了一个data数据的json对象。

var data = {
     ......
};

然后在HTMl页面上增加一个 输出元素 和 一个模板元素:

最后在JS给输出元素 附加模板 和 数据。

这样,运行代码后,出现如下图所示界面。

三 , 加载模板

这次把模板放到一个单独的页面中,而不是直接写在页面里。

新建一个template.html,放入以下代码:

<strong>{$T.name} : {$T.list_id}</strong>
<table>
    <tr>
    <th>编号</th>
    <th>姓名</th>
            <th>年龄</th>
    <th>邮箱</th>
</tr>
{#foreach $T.table as record}
<tr>
    <td>{$T.record.id}</td>
    <td>{$T.record.name}</td>
            <td>{$T.record.age}</td>
    <td>{$T.record.mail}</td>
</tr>
{#/for}
</table>

然后新建一个json文件,名称为cs.json,代码如下:

{
name: "用户列表",
list_id: "编号89757",
    table: [
     {id: 1, name: 'Rain', age: 22, mail: },
     {id: 2, name: "皮特', age: 24, mail: },
     {id: 3, name: "卡卡', age: 20, mail: },
     {id: 4, name: "戏戏', age: 26, mail: },
     {id: 5, name: "一揪', age: 25, mail: }
]
}

在jQuery中,可以通过$.ajax()方法来加载 json文件,代码如下:

<script type="text/javascript">
$(function(){
$.ajax({
   type:       "post",
   dataType:   "json",
   url:        "cs.json",
success:    function(data){
                    .....
                }
});
});
</script>

在success回调函数里,首先需要设置模板,然后需要添加数据。如下代码所示:

success:    function(data){

// 设置模板
                   $("#result1").setTemplateURL("template.html?date="+(+new Date()), null, {filter_data: true});
                    //   加载数据
                    $("#result1").processTemplate(data);
                }
}

完整代码如下所示:

$(function(){
$.ajax({
   type:       "post",
   dataType:   "json",
   url:        "cs.json",
success:    function(data){
                    $("#result1").setTemplateURL("template.html?date="+(+new Date()), null, {filter_data: true});
                    $("#result1").processTemplate(data);
                }
});
});

运行代码后,也可以得到上图的界面。

四 ,小结

关于 new Date().getTime()的简写方式:可以参考这篇文章:

http://www.cssrain.cn/article.asp?id=1116

CssRain提供的几个例子,按照官方写的:

点击下载此文件

jtemplates官方首页 :

http://jtemplates.tpython.com/

官方的几个例子:
1. Simple template (see source as description)
example1.html

2. Example 1 + multiple elements + parameters
example2.html

3. Example 1 (Valid XHTML 1.1 !)
example3.html

4. Multitemplate (Valid XHTML 1.1)
example4.html

转载于:https://www.cnblogs.com/lxinxuan/archive/2009/03/10/1407756.html

[转]jquery的一个模板引擎-zt相关推荐

  1. 说说如何用JavaScript实现一个模板引擎

    前言 不知不觉就很长时间没造过什么轮子了,以前一直想自己实现一个模板引擎,只是没付诸于行动,最近终于在业余时间里抽了点时间写了一下.因为我们的项目大部分用的是 swig 或者 nunjucks ,于是 ...

  2. 用js写一个模板引擎

    模板引擎在前后端都能用到,但是通过作为前端,我们只需要一些简单的模板引擎. 先上代码: <code class="hljs xml has-numbering" style= ...

  3. html模板引擎的作用,如何用javascript实现一个模板引擎

    模板引擎简介 模板引擎是html渲染必不可少的工具,前端开发的同学经历了从最原始的字符串拼接.用数组push/join,发展到封装简单的string.format函数,再到功能更加强大的模板引擎,可以 ...

  4. 【原创】推荐一个模板引擎 - templateengine

    一直都在使用StringTemplate模板引擎,虽然使用方便,但是功能实在太弱太弱,准备放弃使用StringTemplate.刚好碰巧发现了另外一个开源的模板引擎,就是今天要介绍的TemplateE ...

  5. 不用正则表达式,用javascript从零写一个模板引擎(一)

    前言 模板引擎的作用就是将模板渲染成html,html = render(template,data),常见的js模板引擎有Pug,Nunjucks,Mustache等.网上一些制作模板引擎的文章大部 ...

  6. 【python】简单实现一个模板引擎

    # simpletemplate 简单的前端html编译程序 有时候,我们就是简单的做几个前端页面,页面难免会出现重复的地方,比如head和footer nav导航,这个时候,我们修改一处,其它 地方 ...

  7. 基于jQuery开发的javascript模板引擎-jTemplates

    这里介绍一个基于jQuery开发的模板引擎. jTemplates目前最新的版本是0.7.8,由tPython开发.官方网站:http://jtemplates.tpython.com 两个附件,一个 ...

  8. 写一个迷你版Smarty模板引擎,对认识模板引擎原理非常好(附代码)

    前些时间在看创智博客韩顺平的Smarty模板引擎教程,再结合自己跟李炎恢第二季开发中CMS系统写的tpl模板引擎.今天就写一个迷你版的Smarty引擎,虽然说我并没有深入分析过Smarty的源码,但是 ...

  9. SpringBoot笔记之模板引擎

    模板引擎 1. SpringBoot Web开发总览 1.1 Web开发静态资源处理 1.2 首页处理 2. Thymeleaf模板引擎 2.1 模板引擎 2.2 引入Thymeleaf 2.3 Th ...

最新文章

  1. spring整合springmvc和mybatis
  2. Tuple解决在视图中通过razor获取控制器传递给视图的匿名对象的报错问题
  3. python中list[1啥意思_详解Python中list[::-1]的几种用法
  4. ajax 调用后台的方法
  5. [].slice.call(arguments)模拟实现 Array.of
  6. Python面向对象-概念、类、实例
  7. 【转】JavaScript eval处理JSON数据 为什么要加括号
  8. 信息学奥赛一本通 1114:白细胞计数 | OpenJudge NOI 1.9 08
  9. 技术人的“匠心”:一件事竟然做了20年…
  10. Resources$NotFoundException
  11. 【031】◀▶ 一些心得体会总结
  12. JavaScript:split() 方法和join() 方法
  13. css3径向渐变详解-遁地龙卷风
  14. IIS_设置64位机器上的(IIS6/IIS7)兼容32位程序
  15. 运放的转换速率(压摆率)SR的意义和如何选取
  16. 文件或目录损坏且无法读取的解决办法(集合)
  17. C. Game Master(强连通分量,缩点,建图
  18. Android5.0新特性:RecyclerView实现上拉加载更多
  19. MATLAB中readtimetable函数用法
  20. 耳机声音一边大一边小

热门文章

  1. win10无法检测java_Javac 在windows10系统不识别
  2. android 静态list,android studio 利用gradle和cmakelist生成c++静态库.a的方法总结
  3. leetcode最小面积_LeetCode—— 939. 最小面积矩形(JavaScript)
  4. 【uni-app】动态计算图片高度且保持宽高比
  5. maven 多模块项目:单独构建某个模块
  6. Java volatile关键字原理解剖
  7. vue中img标签onerror事件
  8. springboot-mail
  9. 实验结果报告与实验总结_教科版科学四年级上册实验报告
  10. java三级考试题库_JAVA题库:格林模拟试题三(下)