jQuery模板(JsRender).docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下一代jQuery模板JsRender JsRedner和JsViews(JsViews是再JsRender基础上的进一步封装)被称为下一代的jQuery模板,官方地址:/BorisMoore/JsRender /BorisMoore/jsviews jQuery模板是一个javascript引擎(抄的、这个东东太高深了),他最直接的作用就是:1、代码重用,减少代码量;(貌似还更容易编写)2、抛弃繁琐的字符串拼接、提高代码可见性、简化维护。 为什么需要模板总之,我是写过无数这样蛋疼的代码: var html = ; $.each(data.persons, function (i, item) { html += trtd + item.FirstName + /tdtda href=/Person/Edit/         + item.PersonID + Edit/a | a href=/Person/Details/         + item.PersonID + Details/a | a href=/Person/Delete/         + item.PersonID + Delete/a/td/tr; }); $(#XXX).append(html);  如果觉得这样还是不明显,可以参见ASP.NET MVC利用PagedList分页(二)PagedList+Ajax+JsRender中的第四部分,这样写很明显的坏处就是:这样的代码可见性太低,很难维护。或许你几个月之后再来看你的代码,你要花半个小时甚至更多才能得出代码的展示结构。下面来看个JsRender的例子: //Templates script type=text/x-JsRender id=personListTemplate {{for persons}} tr td{{:FirstName}}/td td a href=/Person/Edit/{{:PersonID}}Edit/a | a href=/Person/Details/{{:PersonID}}Details/a | a href=/Person/Delete/{{:PersonID}}Delete/a /td /tr {{/for}} /script //Render Data var html = $(#personListTemplate).render(data); //Insert into Container $(#XXX).append(html); ?  代码的结构确实清晰可见了,但是代码越看越多了。首先,这是错觉,因为这里的东东都是严格换行了的。其次,这里省去了item、each等字符复杂字符,貌似更容易编写了。JsRender和jQuery Template   既然JsRender是下一代jQuery模板,那么谁是上一代模板呢?jQuery Template。jQuery Template的特点这里就不废话了,说说JsRedner和jQuery Template的差距:   1、JsRender渲染非常快,网上说的是“和最快一样快”(当然我也不知道他到底有多快)。对于简单的模板的渲染,JsRender的渲染速度比Js Template可以快20倍。   2、JsRender对Dom和jQuery不存在任何依赖(注:不依赖并不是说不使用...)。在jQuery Template 必须用$.template(name,XXX)标记模板,然后渲染。JsRedner不用,他甚至可以直接渲染字符串。   3、JsRender和jQuery Template相比,JsRender仅仅需要更少的代码,2就是一个例子。 JsRender三要素和行为   从上面贴的代码可以看出,JsRender需要三要素:模板(Template)、容器(Container:简单。。。)、数据(Data:数据可以使各种js对象:如数组,object等等)。主要行为为:渲染模板、将渲染结果插入容器(这个太简单了)。说下渲染模板先。。。 JsRender渲染模板   1、无需编译直接渲染:  var html = $(#XXXXX).render(data); // XXX代表某个脚本标记,也就是上面的script id=XXX type=text/x-JsRender/script   2、渲染前编译: /*A、获取模板对象的方式编译*/ var xxxT

文档评论(0)

rijindj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档