模板引擎
Posted longhua-0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模板引擎相关的知识,希望对你有一定的参考价值。
/*
1.模板
2.解析,替换字符串
javascript模版引擎就是字符串替换,剥离出JavaScript语句,然后利用新的字符串构造函数,返回结果。
*/
<!DOCTYPE html> <html> <head> <title>Template</title> </head> <body> <div id="results"></div> <script type="text/html" id="user_tmpl"> <ul> <% for ( var i = 0; i < users.length; i++ ) { %> <li><a href="<%=users[i].url%>"><%=users[i].name%></a></li> <% } %> </ul> </script> <script> var results = document.getElementById("results"); var users=[ {"name":"smile", "url":"http://localhost"}, {"name":"Amy", "url":"http://localhost"}, {"name":"JavaScript", "url":"http://localhost"} ]; //模板解析 function tmpl(id,data){ //data:JSON对象。 var html=document.getElementById(id).innerHTML; var result="var p=[];with(obj){p.push(‘" +html.replace(/[ ]/g," ") .replace(/<%=(.*?)%>/g,"‘);p.push($1);p.push(‘") .replace(/<%/g,"‘);") .replace(/%>/g,"p.push(‘") +"‘);}return p.join(‘‘);"; var fn=new Function("obj",result); return fn(data); } results.innerHTML = tmpl("user_tmpl", users); </script> </body> </html>
效果图:
以上是关于模板引擎的主要内容,如果未能解决你的问题,请参考以下文章