作家
登录

JavaScript模板入门介绍

作者: 来源:www.28hudong.com 2013-03-30 00:22:48 阅读 我要评论

比如要在一个列表中利用ajax插入一个li的时候,我会直接把数据跟html标签拼接成一句完整的html,然后插入到ul中。无论数据是从服务器端拿回的,或者是从用户的input输入中拿到的——无论哪种方法都是一样。 这个拼接过程放在JavaScript文件中,显得非常不优雅。如果还把style也放在JavaScript中,那数据、结构还有样式整个就是一锅粥了,要维护这样的代码会让人想自杀。最过分的就是把页面上最终要生成的HTML都直接放在服务器端,ajax吐出数据就包含了<li>标签,这样的页面几乎不存在扩展性了,修改一个前台样式都要涉及后台代码的修改。 后来我们知道了不要在JavaScript中对DOM进行style定制,而是只需要在CSS文件中定义好对应的class,然后在JavaScript中使用这个class就好。 接下来我们要做的就是用JavaScript模板把HTML结构(在这个案例中,是<li>标签)也从JavaScript中分离。 市面上的JavaScript模板很多了,以handlebars这个优秀的模板为例吧: 我们在页面的html中定义模板: 复制代码 代码如下: <script id="list-template" type="text/x-handlebars-template"> <li>{{title}}</li> </script> 然后在我们的逻辑JavaScript代码中可以把数据拼接到这一模版中: 复制代码 代码如下: var source = $("#list-template").html(); //模板源,一般放在html的script中,这里我们使用jQuery,也可以使用其它方法直接获得内容字符串 var template = Handlerbars.compile(source); //编译生成一个模板template var context = {title:"This is a todo item"} //获得数据,数据一般从ajax或者input中取得 var html = template(context); //数据+模板=新的html 这就是基本的 用法了,更多逻辑可以参考官方文档:http://handlebarsjs.com/

  推荐阅读

  js自动闭合html标签(自动补全html标记)

复制代码 代码如下: <script type="text/javascript"> // Close HTML Tags -------------------------------------------- function closeHTML(str){ var arrTags=["span","font","b","u","i","h1","h2","h3","h4">>>详细阅读


本文标题:JavaScript模板入门介绍

地址:http://www.17bianji.com/kaifa2/JS/23072.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)