1. 云栖社区>
  2. 技术文集>
  3. 列表>
  4. 正文

jQuery模板:jQuery Templates Proposal

作者:用户 来源:互联网 时间:2016-06-25 16:50:31

jquery插件模板方法showproducts aspx id一个Script标准函数库模板方法插件模板jquery添加产品tmpl模板插件resultsJquery核心函数

jQuery模板:jQuery Templates Proposal - 摘要: 本文讲的是jQuery模板:jQuery Templates Proposal, 导言(Introduction) 这个提案描述了如何在jQuery的核心库中增加模板支持。更为特别是,这个提案描述了一个新的jQuery方法--名叫ren

导言(Introduction)

这个提案描述了如何在jQuery的核心库中增加模板支持。更为特别是,这个提案描述了一个新的jQuery方法--名叫render(),该方法可以使你用一段HTML代码渲染一个Javascript 对象和Javascript数组作为一个模板。

该提案的目的在于使插件开发者可以利用标准的方法声明和渲染模板。有一个标准的方法声明和渲染模板对每一个人都很有裨益:

  • 插件开发者可以构建丰富的、数据驱动的插件,如DataGrid插件。插件开发者可以在jQuery的核心库对模板支持的基础上构建插件,这样每一次开发新的插件时,可以避免重新实施渲染模板代码。
  • 插件用户可以利用一个标准的语法声明模板。插件用户每次创建模板时不需学习一种新的方法,每次都是从使用新的插件开始。

该提案分两个主要部分。第一部分包含现有模板解决方案简要调查,第二部分是我们的建议,声明和渲染一个模板的方法如何添加到jQuery的核心库中。

现有的模板解决方案

现在已经有了许多JavaScript的解决方案模板,从这方面说,标准化的模板解决方案必然是大势所趋。在本节中,我们向你简要描述四个最流行最有趣的模板。现有的模板解决方案能解决什么?那些特色在jQuery核心中有意义。

微模板

John Resig的微型模板引擎非常小(未压缩仅2KB)。然而,这点小小的代码已经抓到了渲染一个模板的核心功能。

下面是一个用微模板引擎显示单个JavaScript产品对象的例子。

<script src="../jquery-1.4.1.js" type="text/javascript">>;/script>;
<script src="MicroTemplating.js" type="text/javascript">;</script>;
<script type="text/javascript">;
    var product = { name: "Laptop", price: 788.67 };
    $(showProduct);
    function showProduct() {
        $("#results").html( tmpl("productTemplate", product) );
    }
    function formatPrice(price) {
        return "$" + price;
    }
</script>;

tmpl()方法用来从一个product模板和product对象生成一个字符串。其结果分配给一个名叫results的div元素的innerHTML。

product模板在页面body的SCRIPT中定义。

<script type="text/html" id="productTemplate">
    Product Name: <%= name %>
    <br />
    Product Price: <%= formatPrice(price) %>
</script>
<div id="results"></div>

注意,SCRIPT的type属性为“text/ html”。用这种方式来声明web浏览器会忽略SCRIPT里的内容,将其内容当作字符串来对待。

注意,模板包含代表产品名称和价格属性的表达式。调用JavaScript的formatPrice()方法来格式化产品的价格。在模板里你可以调用任何JavaScript函数。

这里是如何渲染一个product对象数组的示例:

function showProducts() {
    // parse the template
    var template = tmpl("productTemplate");
    // loop through the products
    var results = '';
    for (var i = 0; i < products.length; i++) {
        results += template(products[i]);
    }
    // show the results
    $("#results").html(results);
}

tmpl()函数支持currying(关于什么currying,可以在网上查阅资料)。如果没有提供数据给tmpl()函数,他将返回一个javascript函数,代表解析的模板。

在上面的代码中,模板被解析,然后为每一个product调用模板方法生成一个字符串。最后,字符串分配给名叫results的div元素的innerHTML。



以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有 的相关内容,欢迎继续使用右上角搜索按钮进行搜索jquery , 插件 , 模板 , 方法 , showproducts aspx id , 一个 , Script标准函数库 , 模板方法 , 插件模板 , jquery添加产品 , tmpl , 模板插件 , results Jquery核心函数 templates、youjoomla templates、c templates中文版、c templates、codetemplates.xml,以便于您获取更多的相关知识。

templates-创建c++模板

...要的那些代码吗??去官网看,看到一句you cannot explore templates for c++ projects.这是在让我绝望吗? 解决方案 建一个头文件,内部包含需要的那些头文件 你只要包含这个头文件,就自动包含那许多头文...

jQuery模板技术和数据绑定实现代码_jquery

...用服务器端控件显示数据一样容易。 这个技术就叫jQuery templates and data linking ,这是微软对jQuery做的一个扩展。这种扩展需要jQuery官方的审核,然后才能被包含在jQuery中。据ScottGu的博客上说,此扩展正在等待审核阶段。但是这些...

PHP+jQuery 长文章分页类 ( 支持 url / ajax 分页方式 )

... └─conn.php│├─libs -- smarty库│├─templates│ ││ ├─add_article.html -- 添加文章模板│ ├─view_article.html -- 前台文章页模板│ ├─list.html -- 前台列表页模板│ ├─success.html -- 操作成功时显...

20个有用的 PHP + jQuery 组件和教程

Web应用程序做了在改进用户的巨大的飞跃和区域体验由于很多最近被开发的Ajax技术。 当您结合PHP一些整洁的功能礼貌以jQuery的聪明时您能导致相当一些整洁的作用。 帮助您采取它山谷,我们希望分享帮助的您的站点有些方法期...

jQuery模板技术和数据绑定实现代码

...用服务器端控件显示数据一样容易。 这个技术就叫jQuery templates and data linking ,这是微软对jQuery做的一个扩展。这种扩展需要jQuery官方的审核,然后才能被包含在jQuery中。据ScottGu的博客上说,此扩展正在等待审核阶段。但是这些...

前三篇
后三篇