本次记录下ejs的渲染标签

node既然是javascrip的,那么很多在前端执行代码的方式都可以放在后台从而达到无缝连接!

比如

var ygxx = function(){
document.getElementById("xm").innerHTML = '姓名:'+jyh.XM+'('+jyh.DS+')';
document.getElementById("sszd").innerHTML = '所属站点:'+jyh.SSZD;
document.getElementById("zw").innerHTML = '职务:'+jyh.ZW;
document.getElementById("lspgbh").innerHTML = '编号:'+bh.PGBH;
};

这个代码在以往,我的处理方式就是把HTML页面里生成一个 var  jyh = {};的对象 载入页面之后自动渲染

有了node就不需要这样了,完全可以在后台做

当然这里主要配合express和ejs

网上收入的ejs标签介绍:

ejs 的标签系统非常简单,它只有以下3种标签。

1 <% code %>:JavaScript 代码。 
2 <%= code %>:显示替换过 HTML 特殊字符的内容。 
3 <%- code %>:显示原始 HTML 内容。

注意: <%= code %> 和 <%- code %> 的区别,当变量 code 为字符串时,两者没有区别;当 code 为比如<h1>hello</h1> 时,<%= code %> 会原样输出 <h1>hello</h1>,而 <%- code %> 则会输出H1大的 hello。

EJS 的官方示例:

The Data

1 { title:    'Cleaning Supplies',
2   supplies: ['mop''broom''duster'] }

The Template

1 <ul>
2 <% for(var i=0; i<supplies.length; i++) {%>
3    <li><%= supplies[i] %></li>
4 <% } %>
5 </ul>

The Result

  • mop
  • broom
  • duster

我们可以用上述三种方式实现页面模板系统能实现的任何内容。

由此可以得出一个信息,ejs允许后台定义一个对象,然后前台模版用标签来实现调用对象

比如:

该文件为express的路由文件

exports.index = function(req, res){
res.render('index', {
code:{"GH":"1101","XM":"带头大哥","DS":"329","SSZD":"中国站","ZW":"管理员"}

});
};

后台定义一个对象,然后

前台模版

var ygxx = function(){
alert('AAA');
document.getElementById("xm").innerHTML = '姓名:<%= code.XM %>(<%= code.GH %>)';
document.getElementById("sszd").innerHTML = '所属站点:<%= code.SSZD %>';
document.getElementById("zw").innerHTML = '职务:<%= code.ZW %>';
};

如此这般就可以实现对象的调用,实际现实效果就是

姓名:带头大哥(1101)
所属站点:中国站
职务:管理员

另外还需要一个方式比如

前台有对象

var json = {}; 为了动态加入标签

var json = <%= code %>;

这里如果后台

exports.index = function(req, res){
res.render('index', { 
code:'{"GH":"1101","XM":"带头大哥","DS":"329","SSZD":"中国站","ZW":"管理员"}'

});
};

后台渲染字符串,用<%= >标签会报乱码!!

应该用-号

var json = <%- code %>;

这样就可以了!

最新文章

  1. Javascript 事件对象(六)键盘事件
  2. NTP服务器引起的上行带宽超大
  3. coursera 公开课 文本挖掘和分析(text mining and analytics) week 1 笔记
  4. linux怎么模糊查找一个文件
  5. linux ldconfig
  6. app.config中的connectionstring
  7. SPRING IN ACTION 第4版笔记-第十章Hitting the database with spring and jdbc-004-使用NamedParameterJdbcTemplate
  8. RHEL7-使用Apache服务部署静态网站
  9. POJ 1173 Find them, Catch them
  10. javascript+dom 做javascript图片库
  11. Android反编译APK
  12. Octave Tutorial(《Machine Learning》)之第二课《数据移动》
  13. python 排序之sort
  14. node.js—File System(文件系统模块)
  15. webpack 学习总结demo
  16. Flume的Channel
  17. RabbitMQ install (Ubuntu)
  18. ssh 使用 aws
  19. iOS-自定义NavigationItem返回按钮【pop返回按钮】
  20. django之创建第7-3个项目-在站点blog下单独创建urls.py文件

热门文章

  1. [Python学习] 简单爬取CSDN下载资源信息
  2. ios开发网络学习二:URL转码以及字典转模型框架MJExtension的使用
  3. js进阶正则表达式修饰符(i、g、m)(var reg2=/html/gi)
  4. js javascript正则
  5. zookeeper无法启动&amp;quot;Unable to load database on disk&amp;quot;
  6. [React] Understand React.Children Utilities
  7. C++省略号类型和参数个数不确定函数参数范例
  8. TensorFlow中卷积
  9. 学习JS的这些日子——十二月总结
  10. html5常用标签table表格布局