template.js 模板引擎
例子:
html代码:
<div id="box"></div>
css代码:
table{
border-collapse: collapse;
text-align: center;
line-height:;
}
td{
border: 1px solid #000;
}
json数据:
[
{
"name":"张三",
"age":"23",
"sex":"男"
},
{
"name":"李四",
"age":"26",
"sex":"男"
},
{
"name":"王五",
"age":"18",
"sex":"女"
}
]
1、使用原生ajax方法
<script>
function getXMLHttp(){
var xhr=null;
if(window.XMLHttpRequest){
xhr=new XMLHttpRequest(); //chrome ff
}else{
xhr=new ActiveXObject("Microsoft.XMLHttp"); //ie
}
return xhr;
}
window.onload=function () {
var xhr=getXMLHttp();
xhr.onreadystatechange=function(){
if(xhr.readyState==4 && xhr.status==200){
var data=JSON.parse(xhr.responseText);
var str="<table width='300'><tr><td>姓名</td><td>年龄</td><td>性别</td></tr>";
for(var i=0;i<data.length;i++){
str+="<tr>";
for(var key in data[i]){
str+="<td>"+data[i][key]+"</td>";
}
str+="</tr>"
}
document.getElementById("box").innerHTML=str;
}
}
xhr.open("GET","userInfo.json");
xhr.send();
}
</script>
2、使用jquery $.ajax方法:
<script>
$.ajax({
url:"userInfo.json",
dataType:"json",
success:function(data){
var table=$("<table width='300'><tr><td>姓名</td><td>年龄</td><td>性别</td></tr>");
$(data).each(function(index,element){
var tr=$("<tr></tr>");
$.each(element,function (i,e) {
tr.append($("<td>"+e+"</td>"));
})
table.append(tr);
})
$("#box").html(table);
}
})
</script>
3、引入模板并用ajax方法使用:
<script src="jquery.min.js"></script>
<script src="template-native.js"></script><script type="text/template" id="t">
<table width="300">
<tr><td>姓名</td><td>年龄</td><td>性别</td></tr>
<%for(var i=0;i<userInfo.length;i++){%>
<tr>
<td><%=userInfo[i].name%></td>
<td><%=userInfo[i].age%></td>
<td><%=userInfo[i].sex%></td>
</tr>
<%}%>
</table>
</script>
<script>
$.ajax({
url:"userInfo.json",
dataType:"json",
success:function(data){
var userObj={
userInfo:data
}
var str=template("t",userObj);
$("#box").append(str); }
})
</script>
浏览器效果:

template.js 模板引擎的更多相关文章
- doT js 模板引擎【初探】要优雅不要污
js中拼接html,总是感觉不够优雅,本着要优雅不要污,决定尝试js模板引擎. JavaScript 模板引擎 JavaScript 模板引擎作为数据与界面分离工作中最重要一环,越来越受开发者关注. ...
- JS 模板引擎 BaiduTemplate 和 ArtTemplate 对比及应用
最近做项目用了JS模板引擎渲染HTML,JS模板引擎是在去年做项目是了解到的,但一直没有用,只停留在了解层面,直到这次做项目才用到,JS模板引擎用了两个 BaiduTemplate 和 ArtTemp ...
- js模板引擎
js模板引擎包括如下: template 官方参考:http://aui.github.io/artTemplate BaiduTemplate 官方参考:http://baidufe.github. ...
- 调研js模板引擎
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
- js模板引擎介绍搜集
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
- art template前端模板引擎
偶然看到后台有一段代码 采用的是art template的模板引擎 地址为 http://aui.github.io/artTemplate/ 这段代码很简洁 var html = template( ...
- js模板引擎--artTemplate
js模板引擎--artTemplate 以前研究过一段时间的handlebars,但因为其渲染性能略逊于腾讯的artTemplate(在artTemplate的GitHub官网上有推荐的性能测试地址) ...
- 百度JS模板引擎 baiduTemplate 1.0.6 版
A.baiduTemplate 简介 0.baiduTemplate希望创造一个用户觉得“简单好用”的JS模板引擎 注:等不及可以直接点左侧导航中的”C.使用举例“,demo即刻试用. 1.应用场景: ...
- 浅析js模板引擎
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
随机推荐
- Python函数及参数
## 函数 - 函数是代码的一种组织形式,一般一个函数完成一个特定功能 - 函数需要先定义后使用 - 函数的定义 def func_name(参数): func_body ... return fun ...
- 虚拟机桥接模式下多台Ubuntu16.04系统互相连接
1.首先新建一个虚拟机并在该虚拟机上安装Ubuntu16.04系统.为这台虚拟机起名为Ubuntu3. 2.对Ubuntu3进行克隆,为新克隆生成的虚拟机起名为Ubuntu2.(这时我们会发现Ubun ...
- C语言函数篇(一)函数的组成
函数的组成: 函数名 输入参数 返回值 返回值 函数名 (输入参数){ 执行体 } 用指针保存函数: int func(int a, int b, char c){ } --> int (*fu ...
- C语言基础篇(二)运算符
导航: 2.1 算数运算符 2.2 逻辑运算符 2.3 位运算 2.4 赋值运算 2.5 内存访问符号 ----->x<------------->x<------------ ...
- 裸机——iNand
1.先晓得iNand的基础知识 iNand是在SD卡基础上发展来的,而SD卡是在MMC的基础上发展来的,MMC是在Nand的基础上发展来的 我们晓得Nand的基础知识,而MMC对Nand大致做了两个改 ...
- 2、spring boot 配置文件
配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的: •application.properties •application.yml 配置文件的作用:修改SpringBoot自 ...
- [Link-Cut-Tree][BZOJ2002]弹飞绵羊
题面 Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lostmonkey在地上沿着一条直线摆上\(n\)个 ...
- 笔记-python-元类metaclass
笔记-python-元类metaclass 1. 元类 1.1. 类也是对象 class Person(object): pass 上面的代码会在内存中创建一个类,它也是对象, 可以将 ...
- Android log 引发的血案
今天调试代码,我打印了一个东西: Log.d("WelcomeActivity", res.str); 结果总是代码执行不到这一行的下一行,程序也没有挂掉.后来,我自己去想各种可能 ...
- java前台传参json,后台用map或者实体对象接收
(一)前台传js对象,里面包含数组,后台用map接收 (1)第一种情况:数组里不包含js对象 var param ={}: param.id=id; param.name=name; var scor ...