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之第二天
Oct 09 PHP
PHP数据缓存技术
Feb 14 PHP
PHP中call_user_func_array()函数的用法演示
Feb 05 PHP
怎样给PHP源代码加密?PHP二进制加密与解密的解决办法
Apr 22 PHP
PHP中判断变量为空的几种方法小结
Nov 12 PHP
php指定函数参数默认值示例代码
Dec 04 PHP
PHP实现取得HTTP请求的原文
Aug 18 PHP
PHP中4种常用的抓取网络数据方法
Jun 04 PHP
PHP简单处理表单输入的特殊字符的方法
Feb 03 PHP
PHP实现网页内容html标签补全和过滤的方法小结【2种方法】
Apr 27 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
PHP变量的作用范围实例讲解
Dec 22 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
玛琪朵 Macchiato
2021/03/03 咖啡文化
自己前几天写的无限分类类
2007/02/14 PHP
浅谈PHP定义命令空间的几个注意点(推荐)
2016/10/29 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
jQuery老黄历完整实现方法
2015/01/16 Javascript
js实现带关闭按钮始终显示在网页最底部工具条的方法
2015/03/02 Javascript
jQuery插件Validate实现自定义校验结果样式
2016/01/18 Javascript
JS组件Bootstrap实现弹出框效果代码
2016/04/26 Javascript
基于Echarts 3.19 制作常用的图形(非静态)
2016/05/19 Javascript
Bootstrap自定义文件上传下载样式
2016/05/26 Javascript
JS 调用微信扫一扫功能
2016/12/22 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
浅谈jQuery中事情的动态绑定
2017/02/12 Javascript
Bootstrap Table快速完美搭建后台管理系统
2017/09/20 Javascript
获取本机IP地址的实例(JavaScript / Node.js)
2017/11/24 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
Layui实现数据表格中鼠标悬浮图片放大效果,离开时恢复原图的方法
2019/09/11 Javascript
Javascript实现秒表计时游戏
2020/05/27 Javascript
python基于queue和threading实现多线程下载实例
2014/10/08 Python
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
Python函数装饰器实现方法详解
2018/12/22 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
python实现按日期归档文件
2021/01/30 Python
英国领先的珍珠首饰品牌:Orchira
2016/09/11 全球购物
加拿大知名的国际儿童品牌:Hatley
2016/11/09 全球购物
编程输出如下图形
2013/11/24 面试题
公司出纳岗位职责
2013/12/07 职场文书
党员干部廉政承诺书
2015/04/28 职场文书
2015毕业设计工作总结
2015/07/24 职场文书
详解nodejs内置模块
2021/05/06 NodeJs
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
微信小程序中wxs文件的一些妙用分享
2022/02/18 Javascript