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中调用ASP.NET的WebService的代码
Apr 22 PHP
PHP迭代器的内部执行过程详解
Nov 12 PHP
使用图灵api创建微信聊天机器人
Jul 23 PHP
WordPress中查询文章的循环Loop结构及用法分析
Dec 17 PHP
Zend Framework教程之Resource Autoloading用法实例
Mar 08 PHP
Yii2框架实现数据库常用操作总结
Feb 08 PHP
php中Ioc(控制反转)和Di(依赖注入)
May 07 PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 PHP
PHP实现的redis主从数据库状态检测功能示例
Jul 20 PHP
利用laravel+ajax实现文件上传功能方法示例
Aug 13 PHP
Laravel推荐使用的十个辅助函数
May 10 PHP
tp5框架基于ajax实现异步删除图片的方法示例
Feb 10 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
打造计数器DIY三步曲(下)
2006/10/09 PHP
生成静态页面的php函数,php爱好者站推荐
2007/03/19 PHP
用php实现的下载css文件中的图片的代码
2010/02/08 PHP
PHP 日志缩略名的创建函数代码
2010/05/26 PHP
php调用mysql数据 dbclass类
2011/05/07 PHP
php 文件上传类代码
2011/08/06 PHP
ThinkPHP 3.2 版本升级了哪些内容
2015/03/05 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
php微信公众号开发之欢迎老朋友
2018/10/20 PHP
PHP函数用法详解【初始化、嵌套、内置函数等】
2020/06/02 PHP
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
JQueryEasyUI Layout布局框架的使用
2013/04/08 Javascript
jquery遍历checkbox的注意事项说明
2014/02/21 Javascript
Yarn的安装与使用详细介绍
2016/10/25 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
Vue.js基础知识小结
2017/01/13 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
使用axios实现上传图片进度条功能
2017/12/21 Javascript
JS解惑之Object中的key是有序的么
2019/05/06 Javascript
vue项目中将element-ui table表格写成组件的实现代码
2019/06/12 Javascript
node.js使用stream模块实现自定义流示例
2020/02/13 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
python利用urllib实现爬取京东网站商品图片的爬虫实例
2017/08/24 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
css3 background属性调整增强介绍
2010/12/18 HTML / CSS
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
计算机专业毕业生的自我评价
2013/11/18 职场文书
信息专业学生学习的自我评价
2014/02/17 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
2014年初一班主任工作总结
2014/11/08 职场文书
初中英语教学随笔
2015/08/15 职场文书
2019个人工作计划书的格式及范文!
2019/07/04 职场文书
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
2021/06/30 SQL Server
SpringBoot 整合mongoDB并自定义连接池的示例代码
2022/02/28 MongoDB