模板引擎简单使用_Kim丶的博客-程序员资料

技术标签: 模板引擎使用  web  模板引擎  

模板引擎一般用作处理响应数据渲染,为了使用户界面与业务数据(内容)分离而产生的。
推荐一些模板引擎:

使用

模板引擎实际上就是一个 API,模板引擎有很多种,使用方式大同小异,目的为了可以更容易的将数据渲染到 HTML中。
详情模板引擎语法去官网查看手册,上面例举一些模板引擎。

  1. 选择一个模板引擎,下载到本地,把js文件添加到项目中
  2. 先引入jQuery.js文件(写jQuery语句必须)
  3. 在页面中利用script引入模板引擎
  4. 创建一个script标签,帮后台数据与模板引擎绑定
  5. 再创建一个script标签,设置type属性,编写html语句,已经利用模板引擎语句编写,把想要的数据添加上去。
  6. 把这个script展示在页面上。

举例jsRender使用:
了解:

  • script标签如果type不等于text/javascript的话,内部内容不会作为JavaScript执行。
  • 一般使用模板引擎,把script标签的type设为text/x-模板引擎名
<html>
<head>
	<title>jsRender模板引擎使用</title>
</head>
<body>
<table>
	<thead>
		<tr>
			<th width="40"><input type="checkbox"></th>
			<th>作者</th>
			<th>评论</th>
			<th>评论在</th>
			<th>提交于</th>
			<th>状态</th>
		</tr>
	</thead>
	<tbody></tbody>
</table>
</body>
</html>
<!-- 第二步 -->
<script src="jquery.js"></script>
<!-- 第三步 -->
<script src="jsrender.min.js"></script>
<!-- 第五步 -->
<script id="comments_tmpl" type="text/x-jsrender">
// 循环数据集
	{
      {
      for comments}}
	// status,author,content,post_title,created是数据名字
	// tr标签中还使用了模板引擎if语句,判断status不同的值采用不同的class样式
	<tr {
      {
      if status == 'held'}} class="warning" {
      {
      else status =='rejected'}} class="danger" {
      {
      else}}{
      {
      /if}} data-id="{
      {:id}}">
        <td><input type="checkbox"></td>
        <td>{
      {
      :author}}</td>
        <td>{
      {
      :content}}</td>
        <td>{
      {
      :post_title}}</td>
        <td>{
      {
      :created}}</td>
        <td>{
      {
      if status == 'held'}} 待审 {
      {
      else status =='rejected'}} 拒绝 {
      {
      else}} 同意 {
      {
      /if}}</td>
    </tr>
    {
      {
      /for}}
</script>
<!-- 第四步 -->
<script>
	// 这里我是使用ajax请求后台php,返回JSON数据
	$.getJSON('comments.php', {
      }, function (res) {
      
		// 为模板引擎绑定数据render()方法
		var html = $('#comments_tmpl').render({
      
		// comments是对应上一个script标签的for循环循环的对象(名字自己随意起),res是返回的JSON数据(这里不必大多关注)
			comments: res
		});
	// 在页面添加展示数据
	// 第六步
	$('tbody').html(html)});
});
</script>
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u010689561/article/details/82934590

智能推荐

​程序员离职后收到原公司 2400 元,被告违反竞业协议赔 18 万_唐普开发者程序员:cxyITgc的博客-程序员资料

​程序员离职后收到原公司 2400 元,被告违反竞业协议赔 18 万!到底是怎么回事?

IOS开发之----异常处理_沸腾的泪水05314的博客-程序员资料

转载自:http://blog.sina.com.cn/s/blog_71715bf8010166qf.html开篇大话: Object-C语言的异常处理符号和C++、JAVA相似。再加上使用NSException,NSError或者自定义的类,你可以在你的应用程序里添加强大的错误处理机制。异常处理机制是由这个四个关键字支持的:@try,@catch,@thorw,@finally。当代码

node相关报错问题_gyp info using [email protected]_lily1346891的博客-程序员资料

问题一:node-sass npm ERR! command failed解决:1、删除 npm uninstall node-sass2、安装 npm install node-sass问题二:npm ERR! gyp info it worked if it ends with oknpm ERR! gyp info using [email protected] ERR! gyp info using [email protected] | win32 | x64npm ERR! gyp ERR!

Android 连接USB默认选中MTP模式_Just_Paranoid的博客-程序员资料

Android 连接USB默认选中MTP模式需求分析Android系统默认连接USB会显示:正在通过USB为此设备充电,并且无法在电脑查看存储内容。需要实现的效果:Android 连接USB默认选中MTP模式,连接USB显示:正在通过USB传输文件,选择USB的使用方式的弹框下MTP模式为选中状态,并且可以在电脑端可以访问和写入存储空间。解决方案diff --git a/frameworks/base/services/usb/java/com/android/server/usb/UsbD

小机器人5岁了!细数Android甜点史_Ronys的博客-程序员资料

2012-11-05 作者: 出处:互联网 责编:联想Yoga分期付款月供279元五年前的11月5日,谷歌不仅宣布成立“开放手机联盟”(Open Handset Alliance),表示要帮助创建移动通信的开放标准,而且推出了Android平台——一个基于Linux的智能手机平台。以下是一篇简短的图文介绍,回顾了谷歌手机操作系统的发展。转

【C】函数指针_November's chopin的博客-程序员资料

案例环境代码#include &lt;stdio.h&gt;int max(int x, int y){ return x &gt; y ? x : y;}int main(){ int (* p)(int ,int) = &amp; max; int a, b, c, d; printf("请输入三个整数:\n"); scanf("%...

随便推点

matlab分段函数中大于、小于(“」”、“「”)的应用_matlab小于_viafcccy的博客-程序员资料

代码范例clc,clear;T=0.001;k1=-1:T:5;f1=2*((k1&gt;0)-(k1&gt;4)); %f1(t)的 MATLAB描述k2=-1:T:3;f2=(k2&gt;0)-(k2&gt;2); %f2(t)信号的描述%画图程序subplot(3,1,1)plot(k1,f1);axis([-1,5,0,2.2]) %f1的显示范围title('f1');

mysql安装图解 mysql图文安装教程(详细说明)_浮生(FS)的博客-程序员资料

很多朋友刚开始接触mysql数据库服务器,下面是网友整理的一篇mysql的安装教程,步骤明细也有详细的说明。MySQL5.0版本的安装图解教程是给新手学习的,当前mysql5.0.96是最新的稳定版本。mysql 下载地址 http://www.jb51.net/softs/2193.html下面的是MySQL安装的图解,用的可执行文件安装的

java面试(进阶四篇)解答_恐龙弟旺仔的博客-程序员资料

题目来自于网络,答案是笔者整理的。仅供参考,欢迎指正来源: https://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&amp;amp;mid=2247485779&amp;amp;idx=1&amp;amp;sn=3b06b9923df7f40f887ead8b8a53e50e&amp;amp;chksm=e9c5f0e2deb279f47fbfc3a12a70896bf95fa8c...

mac中安装git并忽略.DS_Store_mac .gitignore 忽略ds__q2826621520的博客-程序员资料

一Homebrew安装git1.安装 Homebrew/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"2.安装gitbrew install git二xcode安装git1.在mac终端中直接输入git.提示是否安装开发者...

执行main方法时出现java.lang.SecurityException异常_live_and_learn_CC的博客-程序员资料

1.执行main方法时弹出 Error: A JNI error has occurred, please check your installation and try againe2.执行后控制台报的错误3.进入ClassLoader.java中,4.原因:在开始执行main方法时就已经加载了以java开头的包路径,所有类加载器在加载文件时会抛出异常5.解决方法:改包...