1.简介
通过jQuery插件实现的模板引擎。
2.使用
1)导入JS
<script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="jquery-jtemplates.js"></script>
2)第一个简单demo
--JS部分
$("#easy").setTemplateElement("easyTemplate"); $("#easy").processTemplate();
--HTML部分
easy use... <div id="easy"> </div> <textarea id="easyTemplate" style="display:none;"> HELLO, <b>jtemplate</b>! </textarea> <hr>
注:默认会将HTML中的特殊字符<,>等进行转义,可以通过设置settings中的filter_data: true取消转义。
jQuery.fn.setTemplateElement(String elementName, [Array includes], [Object settings]);
3)三种全局变量
--$T:数据
--$P:参数
--$Q:XHTML element's attributes
--JS部分
$("#withData").setTemplateElement("withDataTemplate"); $("#withData").setParam("country", "U.S.A"); $("#withData").processTemplate({"name": "Bill"});
--HTML部分
access data <div id="withData"> </div> <textarea id="withDataTemplate" style="display:none;"> HELLO, is <b>{$T.name}</b> from <i> {$P.country} </i>! </textarea> <hr>
4)支持JS方法
--JS部分
function bold(content) { return "<b>" + content + "</b>"; } $("#jsFun").setTemplateElement("jsFunTemplate"); $("#jsFun").processTemplate({"name": "Bill"});
--HTML部分
invoke js function <div id="jsFun"> </div> <textarea id="jsFunTemplate" style="display:none;"> HELLO, {bold($T.name)}! </textarea> <hr>
5)IF语句
{#if |COND|}..{#elseif |COND|}..{#else}..{#/if}
--JS部分
$("#ifClause").setTemplateElement("ifClauseTemplate"); $("#ifClause").processTemplate({"mark": 90});
--HTML部分
if clause <div id="ifClause"> </div> <textarea id="ifClauseTemplate" style="display:none;"> <b>mark</b>: {$T.mark} <b>level</b>: {#if $T.mark >= 80} good {#elseif $T.mark >= 60} pass {#else} fail {#/if} </textarea> <hr>
6)foreach
{#foreach |VAR| as |NAME| [begin=|CODE|] [count=|CODE|] [step=|CODE|]}..{#else}..{#/for}
--JS部分
$("#forEach").setTemplateElement("forEachTemplate"); var students = [{"name": "A", "age": 8}, {"name": "B", "age": 9}]; $("#forEach").processTemplate({"students": students});
--HTML部分
for each <div id="forEach"> </div> <textarea id="forEachTemplate" style="display:none;"> <table> <tr> <td><b>INDEX</b></td><td><b>NAME</b></td><td><b>AGE</b></td> </tr> {#foreach $T.students as student} <tr><td>{$T.student$index}</td><td>{$T.student.name}</td><td>{$T.student.age}</td></tr> {#/for} </table> </textarea> <hr>
7)for语句
{#for |VAR| = |CODE| to |CODE| [step=|CODE|]}..{#else}..{#/for}
--JS部分
$("#forClause").setTemplateElement("forClauseTemplate"); $("#forClause").processTemplate();
--HTML部分
for clause <div id="forClause"> </div> <textarea id="forClauseTemplate" style="display:none;"> {#for index = 1 to 10} {$T.index} {#/for} </textarea> <hr>
8)include语句
{#include |NAME| [root=|VAR|]}
--JS部分
$("#includeClause").setTemplateElement("includeClauseTemplate"); var students = [{"name": "A", "age": 8}, {"name": "B", "age": 9}]; $("#includeClause").processTemplate({"students": students});
--HTML部分
include clause <div id="includeClause"> </div> <textarea id="includeClauseTemplate" style="display:none;"> {#template MAIN} <table> <tr> <td><b>NAME</b></td><td><b>AGE</b></td> </tr> {#foreach $T.students as student} {#include ROW root=$T.student} {#/for} </table> {#/template MAIN} {#template ROW} <tr> <td>{$T.name}</td><td>{$T.age}</td> </tr> {#/template ROW} </textarea> <hr>
9)cycle语句
{#cycle values=|ARRAY|}
--JS语句
$("#cycleClause").setTemplateElement("cycleClauseTemplate"); var students = [{"name": "A", "age": 8}, {"name": "B", "age": 9}]; $("#cycleClause").processTemplate({"students": students});
--HTML语句
cycle clause <div id="cycleClause"> </div> <textarea id="cycleClauseTemplate" style="display:none;"> <table> <tr> <td><b>INDEX</b></td><td><b>NAME</b></td><td><b>AGE</b></td> </tr> {#foreach $T.students as student} <tr bgcolor="{#cycle values=['#AAAAAA','#CCCCCC']}"><td>{$T.student$index}</td><td>{$T.student.name}</td><td>{$T.student.age}</td></tr> {#/for} </table> </textarea> <hr>
3.参考资料
http://jtemplates.tpython.com/
相关推荐
**基于jQuery开发的JavaScript模板引擎 - jTemplates** jTemplates是一个基于jQuery的JavaScript模板引擎,它允许开发者使用HTML模板来动态渲染数据,极大地提高了Web应用的界面更新效率和用户体验。通过将数据与...
**jTemplates 0.8.4 最新版:模板引擎与jQuery插件的高效结合** jTemplates是一款基于jQuery的模板引擎,旨在简化JavaScript中的数据绑定和动态内容渲染。它通过使用预定义的模板语法,允许开发者将HTML结构和数据...
在本文中,我们将深入探讨jTemplates的工作原理,并通过一个具体的“demo”来展示其用法。 ### 一、jTemplates基本概念 1. **模板语法**:jTemplates的模板语法使用特殊的占位符,如`{$Template}`,`{$Data}`等,...
jquery-jtemplates.js可以用,请放心下载,希望能帮到大家。
**jQuery jTemplates** 是一个强大的JavaScript模板引擎,它专门设计用于Web开发中的前端数据绑定。在Web应用程序中,数据和视图之间的分离是至关重要的,而jTemplates提供了一个高效的解决方案,使得开发者能够将...
《JTemplates:构建高效网页模板的利器》 在数字化时代,网页设计与开发的重要性不言而喻。为了提高效率和一致性,许多开发者开始使用模板系统,JTemplates 就是这样一款强大的工具,专为Java开发者设计,用于创建...
**JTemplates 模板引擎详解** JTemplates 是一个强大的JavaScript模板引擎,用于在客户端动态生成HTML内容。它允许开发者将数据和视图分离,通过简单的模板语法将数据填充到HTML结构中,从而实现高效的页面渲染。...
**jTemplates组件源码详解** **一、jTemplates简介** jTemplates是一款轻量级的JavaScript模板引擎,它允许开发者将HTML结构与数据分离,通过模板语法来动态渲染页面内容。这款组件的出现,极大地简化了JavaScript...
jTemplates是一套用作较广的基于jQuery开发的javascript模板引擎,用它可以配合ASP/PHP/JSP/等众多语言来完成诸如通过JavaScript获取JSON数据、获取一个HTML模板、构建客户端分页表格、与数据结合生成HTML静态页面的...
《jQuery.jTemplates实战详解》 在Web开发领域,jQuery是一个广泛应用的JavaScript库,它极大地简化了DOM操作、事件处理和Ajax交互。而jQuery.jTemplates则是jQuery的一个插件,专门用于处理复杂的模板渲染,使得...
内容索引:脚本资源,jQuery,jTemplates jTemplates是一套用作较广的基于jQuery开发的javascript模板引擎,用它可以配合ASP/PHP/JSP/等众多语言来完成诸如通过JavaScript获取JSON数据、获取一个HTML模板、构建客户端...
在这个场景中,我们讨论的是如何在 ASP.NET MVC 中利用 jQuery 模板引擎 JTemplates 来呈现表格数据。jQuery 模板引擎如 JTemplates 提供了一种简便的方式来动态生成 HTML 内容,尤其是当需要处理复杂的数据结构时,...
`jTemplates`支持JSON数据格式,可以方便地与服务器端的数据接口进行对接。 3. **日期插件**: 在网页中显示和处理日期通常需要用到特定的插件,如`jQuery UI Datepicker`或`moment.js`。`jQuery UI Datepicker`...
最后,"jquery-jtemplates.js"是jTemplate插件的文件,这是一个基于jQuery的模板引擎。jTemplate允许开发者使用简单的HTML模板语法来动态渲染数据,将数据绑定到页面元素上,实现数据驱动的视图更新。这在处理大量或...
然而,理解如何与其他工具(如SpringBoot的`templates`和`static`目录、Angular的模板、Django的`templates`设置,以及jQuery的模板引擎JTemplates等)配合使用,也是构建高效Web应用的关键。熟悉这些相关知识,有助...