jQuery模板提案(3)

作者:dishuipiaoxiang 来源:Denis'Blog 时间:2010-03-30 18:27:00 

PURE(纯粹分离式渲染引擎)

PURE 模板引擎的目的在于使开发人员不使用任何特殊标记来声明模板。使用PURE有两种方法:autoRender()方法或render()方法。

使用autoRender()方法时,PURE自动将JSON的属性名称映射到css的class上。例如,你可以编写下面的代码来显示单个产品。

$(showProduct);
function showProduct() {
    var product = { name: "Laptop", price: 788.67 };
    $('div.product').autoRender(product);
}

autoRender()通过将product的name和price 属性分别映射到class为name和price 的元素上来显示产品。

<div class="product">
    Product Name: <span class="name"></span>
    <br />
    Product Price: <span class="price"></span>        
</div>

请注意,模板中没有特殊字符,PURE用纯粹的HTML完成一切。

autoRender()方法依赖于JSON的属性名映射到class名的协议,如果你不想依赖于该协议,你可以用render()方法来代替。

function showProduct() {
    var product = { name: "Laptop", price: 788.67 };
    var directives = { 'span#name' : 'name', 'span#price': 'price'};
    $('div.product').render(product, directives);
}

请注意,一系列指令和要显示的项目传递给render()。这些选择器将选择器映射到JSON属性名,第一个指令将Id为name的span元素映射到name属性,第二个指令将Id为price的span元素映射到price属性。下面是HTML:

<div class="product">
    Product Name: <span id="name"></span>
    <br />
    Product Price: <span id="price"></span>        
</div>

PURE也可以用来渲染一个JavaScript对象数组。例如,下面的代码渲染一个product数组。


function showProducts() {
    var data = { "products": [
            { name: "Laptop", price: 788.67 },
            { name: "Comb", price: 2.50 },
            { name: "Pencil", price: 1.99 }
        ]};

    $('#productTemplate').autoRender(data);
}


由于数组名为product,PURE将每一个product映射到class为product的元素上,以下模板显示所有的三个product。

<div id="productTemplate">
<div class="products">
    Product Name: <span class="name"></span>
    <br />
    Product Price: <span class="price"></span>        
</div>
</div>

标签:jquery,模板,Javascript,对象
0
投稿

猜你喜欢

  • SaaS中的用户体验设计

    2009-05-20 12:28:00
  • MySQL的一级防范检查列表

    2011-12-14 18:39:22
  • JQuery获取表单值

    2009-11-19 13:17:00
  • 15款最佳jQuery LightBox插件

    2010-09-25 12:41:00
  • 多级联动下拉选择框,动态获取下一级

    2008-09-04 10:34:00
  • 很无聊的一个找碴游戏

    2008-07-02 13:10:00
  • DBA_2PC_PENDING 介绍

    2009-02-28 10:59:00
  • ASP实例:读取xml文件的程序

    2007-11-04 18:47:00
  • sql语句查询数据库中的表名/列名/主键/自动增长值实例

    2012-07-11 15:28:58
  • 多维度导航探秘II

    2010-08-17 21:24:00
  • Excel数据导入到Access,Sql Server中示例代码

    2007-10-07 12:03:00
  • YUI学习笔记(2)

    2009-01-21 16:11:00
  • 网页超级链接加上快捷键方法

    2010-03-16 12:28:00
  • ASP 内建六大对象简介

    2009-06-04 18:08:00
  • 避免Adodb.Stream输出UTF-8时自动写入的BOM(asp)

    2011-08-24 20:32:56
  • JavaScript的私有成员

    2009-03-25 20:45:00
  • asp实现将人民币数字改为大写

    2008-05-21 14:08:00
  • 找到个很好的例子导出excel的

    2008-09-28 13:12:00
  • ASP使用FSO组件生成HTML静态页面

    2007-10-15 12:19:00
  • xhtml有哪些块级元素

    2009-12-06 11:58:00
  • asp之家 网络编程 m.aspxhome.com