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 相关文章推荐
相对路径转化成绝对路径
Apr 10 PHP
phpmyadmin MySQL 加密配置方法
Jul 05 PHP
PHP+jQuery实现自动补全功能源码
May 15 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 PHP
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
Jun 12 PHP
详解PHP导入导出CSV文件
Nov 03 PHP
详解PHP中的Traits
Jul 29 PHP
PHP使用imagick扩展实现合并图像的方法
Apr 25 PHP
php实现简单的权限管理的示例代码
Aug 25 PHP
PHP中str_split()函数的用法讲解
Apr 11 PHP
php基于 swoole 实现的异步处理任务功能示例
Aug 13 PHP
详解PHP用mb_string处理windows中文字符
May 26 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与javascript对多项选择的处理
2006/10/09 PHP
Discuz 6.0+ 批量注册用户名
2009/09/13 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
php实现三级级联下拉框
2016/04/17 PHP
jquery css 设置table的奇偶行背景色示例
2014/06/03 Javascript
JQuery实现当鼠标停留在某区域3秒后自动执行
2014/09/09 Javascript
jQuery中append()方法用法实例
2014/12/25 Javascript
Bootstrap 实现查询的完美方法
2016/10/26 Javascript
浅谈js继承的实现及公有、私有、静态方法的书写
2016/10/28 Javascript
详解Vue中状态管理Vuex
2017/05/11 Javascript
Ionic3 UI组件之Gallery Modal详解
2017/06/07 Javascript
详解vue2父组件传递props异步数据到子组件的问题
2017/06/29 Javascript
JS实现微信摇一摇原理解析
2017/07/22 Javascript
javaScript 连接打印机,打印小票的实例
2017/12/29 Javascript
vue解决使用webpack打包后keep-alive不生效的方法
2018/09/01 Javascript
JS简单判断是否在微信浏览器打开的方法示例
2019/01/08 Javascript
vuex如何重置所有state(可定制)
2019/01/17 Javascript
ES6中Set和Map数据结构,Map与其它数据结构互相转换操作实例详解
2019/02/28 Javascript
vscode配置vue下的es6规范自动格式化详解
2019/03/20 Javascript
vue 修改 data 数据问题并实时显示操作
2020/09/07 Javascript
使用python实现baidu hi自动登录的代码
2013/02/10 Python
Python代理抓取并验证使用多线程实现
2013/05/03 Python
python函数装饰器用法实例详解
2015/06/04 Python
开始着手第一个Django项目
2015/07/15 Python
pycharm安装和首次使用教程
2018/08/27 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
python实现将range()函数生成的数字存储在一个列表中
2020/04/02 Python
基于Python组装jmx并调用JMeter实现压力测试
2020/11/03 Python
Dyson加拿大官方网站:购买戴森吸尘器,风扇,冷热器及配件
2016/10/26 全球购物
Max&Co官网:意大利年轻女性时尚品牌
2017/05/16 全球购物
酒店管理求职信范文
2014/04/06 职场文书
cf战队收人口号
2014/06/21 职场文书
教师党的群众路线教育实践活动个人整改措施
2014/11/04 职场文书
幼儿园工作总结2015
2015/04/01 职场文书
2015年班组工作总结
2015/04/20 职场文书
解决MySQL存储时间出现不一致的问题
2021/04/28 MySQL