ThinkPHP中使用ajax接收json数据的方法
author:一佰互联 2019-04-28   click:158

本文实例讲述了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":"<p>1111</p>",    "meno":"1111",    "attachpath":"200903",    "attachment":"49d1d86e68d31.png",    "attachthumb":"49d1d86e68d31_thumb.png"}

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:http://tools.jb51.net/code/json

JSON在线格式化工具:http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:

http://tools.jb51.net/code/json_yasuo_trans

C语言风格/HTML/CSS/json代码格式化美化工具:http://tools.jb51.net/code/ccode_html_css_json

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。