ThinkPHP中使用ajax接收json数据的方法
本文实例讲述了ThinkPHP中使用ajax接收json数据的方法。分享给大家供大家参考。具体分析如下:
这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下:
首先需要引入jquery.js,主要代码如下:
function ajax(id,pic){ //由于ThinkPHP不解析JavaScript里的ThinkPHP常量,所以需要先在这里定义。 var URL='__URL__'; $.ajax({ url: URL+'/returnAjax/id/'+id,//提交访问的URL type: 'GET',//提交的方法 dataType: 'text',//返回的内容的类型,由于PHP文件是直接echo的,那么这里就是text timeout: 1000,//超时时间 error: function(){ //如果出错,执行函数 alert('Error loading XML document'); }, success: function(data){ //alert(data);//如果成功,弹出数据 writeHtml(data,pic); } }); } function writeHtml(data,pic){ var product = eval('(' + data + ')'); //即使不引入json.js也可以转成json对象 //alert($("#cate_pic").attr("src")); $("#cate_pic").attr("src","../images/"+pic); $("#product_pic").attr("src","../Attachments/product/"+product.attachpath+"/"+product.attachthumb); $("#product_subject").html(product.subject); $("#product_content").html(product.content); }
Product.class.php中使用echo输出,thinkphp中json_encode()方法可将对象自动转成json格式
public function returnAjax(){ $id = $_GET['id']; $Product=D('Product')->where('id='.$id)->find(); //返回一个json格式的数据集 echo json_encode($Product); //print_r(json_encode($Product)); }
返回的数据格式如下:
{ "id":"9", "userid":"1", "cid":"10", "cid":"10", "subject":"1111", "color":"", "spec":"", "size":"", "keywords":"", "content":" 1111 ", "meno":"1111", "attachpath":"200903", "attachment":"49d1d86e68d31.png", "attachthumb":"49d1d86e68d31_thumb.png" }
本文主要用于展示在后台的php处理文件和前台js文件之间的通信问题,通信的数据格式为json数据(键值对)。
本文转载自脚本之家:http://www.jb51.net/article/58690.htm 觉得不错,拿来学习,希望对php感兴趣的朋友有所帮助。
ThinkPHP中使用ajax接收json数据的方法的更多相关文章
- ajax接收json数据到js解析
今天又学到了一点新知识,脑子记不住东西特把它记录下来! 页面ajax请求后台时一般都是返回字符串进行判断,要是返回list或者对象时该怎么办? 第一种:ajax接收到list并返回给前台 js代码: ...
- ajax 接收json数据的进一步了解
var url = "../searchclasses"; $.ajax({ url: url, type: "post", dataType: "j ...
- Ajax接收Json数据,调用template模板循环渲染页面的方法
一. 后台接口吐出JSON数据 后台php接口中,需要写三个部分: 1.1 开头header规定数据格式: header("content-type:application/json;cha ...
- Struts2中通过Ajax传递json数据
1.导入Struts2所需要的jar包 下载Struts2的jar包时,可以下载struts-2.5.13-min-lib.zip,然后放到项目的/WebContent/WEB-INF/lib路径下s ...
- springMVC中前台ajax传json数据后台controller接受对象为null
在jquery的ajax中,如果没加contentType:"application/json",那么data就应该对应的是json对象,反之,如果加了contentType:&q ...
- jquery中获取ajax请求返回数据的方法
function getPageTotalAndDataTotal(page) { //设置一个变量用于接收ajax返回的值 var pageTotal = 0; // 获取页数与数据总数 $.aja ...
- AJAX如何接收JSON数据
简介 在我们了解如何使用AJAX返回JSON数据的时候要先明白下列几点 1. JSON如何来表示对象的 2. JSON如何来表示数组的 var object = { "labId" ...
- Jquery的$.ajax、$.get、$.post发送、接收JSON数据及回调函数用法
平时研究代码时,经常会遇到AJAX的相关用法,做项目时才真正体会到Ajax的强大之处(与服务器数据交互如此之便捷,更新DOM节点而不用刷新整个页面),以及运用的频繁程度.今天整理了一下自己之前没搞清楚 ...
- iOS key value coding kvc在接收json数据与 model封装中的使用
iOS key value coding kvc在接收json数据与 model封装中的使用 使用 kvc 能够极大的简化代码工作,及以后的接口维护工作: 1:先创建MovieModel类.h和 . ...
随机推荐
- oracle表导入导出
数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中 exp system/manager@TEST file=d:\daochu. ...
- int指令(软件中断指令)
INT(软件中断指令)是CALL指令的一种特殊形式.call指令调用调用的子程序是用户程序的一部分,而INT指令调用的操作系统提供的子程序或者其他特殊的子程序. 中断服务子程序和标准过程的最大区别是 ...
- 矩阵乘法的MPI并行计算
1.问题描述 矩阵乘法问题描述如下: 给定矩阵A和B,其中A是m*p大小矩阵,B是p*n大小的矩阵.求C = A*B. 求解这个问题最简单的算法是遍历A的行和B的列,求得C的相应元素,时间复杂度O(m ...
- Android 监听网络变化
Android 监听网络变化
- VS 2012 插件卸载(删除自己安装的插件)
给VS 装了一个插件,装完之后感觉别扭,所以想卸载,[工具]--> [扩展和更新]-->[找到想要卸载的插件点击一下就会出现禁用或卸载]
- SPI Flash
使用了MX25L512的SPI接口的Flash 电路连接图: 总的大小512kb,即64kB,sector的大小为256 Bytes,block的大小为4k Bytes 调试时出现的问题: 1.Fla ...
- 解决Delphi自带UTF8解码缺陷(使用API)
因为Delphi自带的转换函数遇到其无法识别的字符串就返回空,下面函数可解决该问题. function DecodeUtf8Str(const S: UTF8String): WideString;v ...
- Android的多媒体框架OpenCore介绍
网上资料很少, 不过还是找到一个比较详细的说明: 特地在此整理了下: 地址:http://blog.csdn.net/djy1992/article/details/9339787 分为几个阶段: 1 ...
- CentOs文件实时同步
1,生成数据序
- g++编译cpp文件
gdb调试c程序打不到断点的原因可能是编译c文件的时候没有加-g选项,-g选项是编译加debug信息的,不加是打不到断点的 g++编译cpp文件 g++ -g -c *.cpp 编译 g+ ...