ThinkPHP中使用ajax接收json数据的方法


Posted in PHP onDecember 18, 2014

本文实例讲述了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"

}
PHP 相关文章推荐
php 分页函数multi() discuz
Jun 21 PHP
PHP简洁函数(PHP简单明了函数语法)
Jun 10 PHP
解析curl提交GET,POST,Cookie的简单方法
Jun 29 PHP
zf框架的registry(注册表)使用示例
Mar 13 PHP
PHP的Socket通信之UDP通信实例
Jul 02 PHP
PHP框架Laravel学习心得体会
Oct 28 PHP
PHP命名空间和自动加载类
Apr 03 PHP
PHP magento后台无法登录问题解决方法
Nov 24 PHP
PHP echo()函数讲解
Feb 15 PHP
PHP创建XML接口示例
Jul 04 PHP
YII2框架中actions的作用与使用方法示例
Mar 13 PHP
PHP预定义接口――Iterator用法示例
Jun 05 PHP
2014最热门的24个php类库汇总
Dec 18 #PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 #PHP
ThinkPHP内置jsonRPC的缺陷分析
Dec 18 #PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 #PHP
php生成二维码时出现中文乱码的解决方法
Dec 18 #PHP
php判断文件上传类型及过滤不安全数据的方法
Dec 17 #PHP
php可生成缩略图的文件上传类实例
Dec 17 #PHP
You might like
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
php猴子选大王问题解决方法
2015/05/12 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
PHP设计模式(五)适配器模式Adapter实例详解【结构型】
2020/05/02 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
Javascript将string类型转换int类型
2010/12/09 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
jquery动态改变onclick属性导致失效的问题解决方法
2013/12/04 Javascript
jquery ajax,ashx,json的用法总结
2014/02/12 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
jQuery操作基本控件方法实例分析
2015/12/31 Javascript
bootstrap选项卡扩展功能详解
2017/06/14 Javascript
JavaScript字符串检索字符的方法
2017/06/23 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
vuejs 制作背景淡入淡出切换动画的实例
2018/09/01 Javascript
浅谈vue项目4rs vue-router上线后history模式遇到的坑
2018/09/27 Javascript
vue路由跳转传递参数的方式总结
2020/05/10 Javascript
Python实现学校管理系统
2018/01/11 Python
Python爬取数据并实现可视化代码解析
2020/08/12 Python
解决python便携版无法直接运行py文件的问题
2020/09/01 Python
python Yaml、Json、Dict之间的转化
2020/10/19 Python
基于Python-Pycharm实现的猴子摘桃小游戏(源代码)
2021/02/20 Python
德国童装购物网站:NICKI´S.com
2018/04/20 全球购物
介绍一下EJB的体系结构
2012/08/01 面试题
什么是lambda函数
2013/09/17 面试题
介绍下java.util.Arrays类
2012/10/16 面试题
大学毕业生简单自荐信
2013/11/05 职场文书
自荐书模板
2013/12/15 职场文书
扬尘污染防治方案
2014/06/15 职场文书
教师辞职信范文
2015/02/28 职场文书
《追风筝的人》:人心中的成见是座大山,但请不忘初心
2019/11/15 职场文书
idea搭建可运行Servlet的Web项目
2021/06/26 Java/Android
详解MySQL中timestamp和datetime时区问题导致做DTS遇到的坑
2021/12/06 MySQL
Java实现简单小画板
2022/06/10 Java/Android