Ajax接收Json数据,调用template模板循环渲染页面的方法
一、 后台接口吐出JSON数据
后台php接口中,需要写三个部分:
1.1 开头header规定数据格式;
header("content-type:application/json;charset=utf-8");
1.2 查询完数据后编写键值对数组;
$theData1 = selectblabla;
$theData2 = selectblabla;
$dataArray= Array(
"theData1" => $theData1,
"theData2" => $theData2
);
1.3 结尾输出json_encode。
echo json_encode($dataArray);
2 建立Template循环模板
2.1 在HTML中引入Template插件js;
<script src="../assets/vendors/art-template/template-web.js"></script>
2.2 在页面内嵌或外联js中写入template模板;
<script type="text/html" id="模板id">
//循环开头结尾用each包起来,开头标明引入的JSON数据源
//如:案例中数据源为backData中的theData2
{{each theData2}}
<tr> //从JSON中需取的值,用$value把键点出来
<td>{{$value.keyA}}</td>
<td>{{$value.keyB}}</td>
<td>{{$value.keyC}}</td>
</tr>
{{/each}}
</script>
3 Ajax请求数据,调用template渲染内容
3.1 在AJex请求中,sucess函数中,调用template()函数
$.get({
url: '../_api/getDate.php',
success: function(backData){
//直接将tbody中的内容html替换为模板循环渲染的内容
$("tbody").html(template("模板id",backData));
})
注意:注册事件函数
模板渲染出来的页面元素均为动态生成的,如需注册事件函数,不能直接将click等事件注册在元素上。
而是on在页面的静态父级元素,再写注册事件函数。
例如:<tr>及里面的内容是动态生成的,需给<tr>中的<a>注册点击事件
//on在table上,注册click事件,触发元素为table中的a
$("table").on("click", "a" ,function(){
函数体;
})
二、后台接口吐出JSON格式的字符串
1 后台接口吐出JSON格式字符串
echo '{
"theKeyA" : "blablabla",
"theKeyB" : "okeyokey"
//… …
}';
2 建立Template循环模板
<script type="text/html" id="模板id">
//循环开头结尾用each包起来,开头标明引入的JSON数据源
//如:案例中数据源为theData1
{{each theData1}}
<tr> //从JSON中需取的值,用$value把键点出来
<td>{{$value.theKeyA}}</td>
<td>{{$value.theKeyB}}</td>
</tr>
{{/each}}
</script>
3 Ajax请求数据,规定JSON格式,调用template渲染内容
3.1 在AJex请求中,定义sucess函数中,调用template()函数
$.get({
url: '../_api/getDate.php',
dataType:'json',
success: function(backData){
//直接将tbody中的内容html替换为模板循环渲染的内容
$("tbody").html(template("模板id",backData));
})
Ajax接收Json数据,调用template模板循环渲染页面的方法的更多相关文章
- ThinkPHP中使用ajax接收json数据的方法
本文实例讲述了ThinkPHP中使用ajax接收json数据的方法.分享给大家供大家参考.具体分析如下: 这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下: 首先 ...
- ajax接收json数据到js解析
今天又学到了一点新知识,脑子记不住东西特把它记录下来! 页面ajax请求后台时一般都是返回字符串进行判断,要是返回list或者对象时该怎么办? 第一种:ajax接收到list并返回给前台 js代码: ...
- ajax 接收json数据的进一步了解
var url = "../searchclasses"; $.ajax({ url: url, type: "post", dataType: "j ...
- 微信小程序 带参调用后台接口 循环渲染页面 wx.request wx:for
test.js 文件里的onLoad function getarticles(p,order,mythis) { wx.request({ url: 'https://ganggouo.cn/ind ...
- Jquery 模板插件 jquery.tmpl.js 的使用方法(1):基本语法,绑定,each循环,ajax获取json数据
jquery.tmpl.js 是一个模板js ,主要有2个方法 (1):$.template()方法,将一段script或者是Html编译为模板,例如 $.template('myTemplate' ...
- Jquery的$.ajax、$.get、$.post发送、接收JSON数据及回调函数用法
平时研究代码时,经常会遇到AJAX的相关用法,做项目时才真正体会到Ajax的强大之处(与服务器数据交互如此之便捷,更新DOM节点而不用刷新整个页面),以及运用的频繁程度.今天整理了一下自己之前没搞清楚 ...
- AJAX如何接收JSON数据
简介 在我们了解如何使用AJAX返回JSON数据的时候要先明白下列几点 1. JSON如何来表示对象的 2. JSON如何来表示数组的 var object = { "labId" ...
- ajax接收json
l 什么是json? l Json和xml比较 l Ajax如何使用JSON l Ajax接收json响应案例 什么是json? JSON (JavaScript Object Notation) 是 ...
- Ajax接收json响应
json? Json和xml比较 Ajax如何使用JSON Ajax接收json响应案例 什么是json?JSON (JavaScript Object Notation) 是一种轻量级的 ...
随机推荐
- 聊聊面试中常问的GC机制
GC 中文直译垃圾回收,是一种回收内存空间避免内存泄漏的机制.当 JVM 内存紧张,通过执行 GC 有效回收内存,转而分配给新对象从而实现内存的再利用. JVM GC 机制虽然无需开发主动参与,减轻不 ...
- laravel 动态属性
我们在 User 模型里定义了关联方法 followings() 关联关系定义好后,我们就可以通过访问 followings 属性直接获取到关注用户的 集合.这是 Laravel Eloquent 提 ...
- splash-简介及入门
splash 1. splash简介 Splash是一个JavaScript渲染服务,是一个带有HTTP API的轻量级浏览器,同时它对接了Python中的Twisted和QT库.利用它,我 ...
- ES5-bind用法及与以前的apply和call
当我们调用一个函数的时候,函数中的this一般是指向调用者的.但是我们其实可以在调用函数的时候,传入一个对象,让函数中的this指向我们传入的对象,而不是调用者本身. apply,call,bind都 ...
- express 应用创建及app.js详解
#1 express 应用创建 1.安装node.js (自行百度) 2.npm install express -g 3.全局安装express生成器 express-generator npm i ...
- 关于 UIDatePicker 在iOS9 系统上的一个坑
在使用 UIDatePicker时,在iOS9系统上上遇到一个很奇怪的问题,在其他系统版本中没发现,设置年月日格式显示的视图,在iOS9设备上出现中间月份无法显示的问题: 检查代码没问题,这个视图是使 ...
- iview table表格内容为数组或者对象的子元素时问题讨论
正常情况下,iview框架table表格内容只需配置好 key 就OK, 稍微复杂点就是用一个reder函数进行操作(params.row 为本行数据) . 以上问题都很好解决,无需太动脑筋. 开发中 ...
- nginx反向代理实战之轮询、Ip_hash、权重
实验环境 192.168.200.111 web1 centos7 192.168.200.112 web2 centos7 192.168.200.113 wev3 centos7 三台主机环境: ...
- Centos610无桌面安装Docker-安装
1.必备环境 设定docker源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.rep ...
- ios中时间倒计时
博客地址 https://github.com/sundayios/SQCountTimeDown.git