DWZ+ThinkPHP开发时遇到的问题分析


Posted in PHP onDecember 12, 2016

本文实例分析了DWZ+ThinkPHP开发时遇到的问题。分享给大家供大家参考,具体如下:

目前我用的 thinkphp 版本是  3.1.3

J-UI  dwz 版本好像是 1.4

当我在项目开发的过程中 遇到了这么的一个问题,
当我我在后台执行ajax操作的时候,success,error不能成功的返回提示的信息,而是返回object object这样的一条错误提示。

研究了很久发现是版本的问题,新改版的ThinkPHP对DWZ中的Ajax技术中的一点不符合版本的问题

所以我就 更改  Action.class.php 中 ajaxReturn函数 为

protected function ajaxReturn($data,$type='') {
    if(func_num_args()>2) {// 兼容3.0之前用法
      $args      =  func_get_args();
      array_shift($args);
      $info      =  array();
      $info['data']  =  $data;
      $info['info']  =  array_shift($args);
      $info['status'] =  array_shift($args);
      $data      =  $info;
      $type      =  $args?array_shift($args):'';
    }
    //
    //较原版增加部分--
    $data['statusCode'] = 1; //
    $data['navTabId'] = $_REQUEST['navTabId'];//
    $data['rel'] = $_REQUEST['rel']; //
    $data['callbackType'] = $_REQUEST['callbackType']; //
    $data['forwardUrl'] = $_REQUEST['forwardUrl']; //
    $data['confirmMsg'] = $_REQUEST['confirmMsg'];//
    $data['message'] = $data['info']; //840206883@qq.com
    //较原版增加部分--
    //
    if(empty($type)) $type =  C('DEFAULT_AJAX_RETURN');
    switch (strtoupper($type)){
      case 'JSON' :
        // 返回JSON数据格式到客户端 包含状态信息
        header('Content-Type:application/json; charset=utf-8');
        exit(json_encode($data));
      case 'XML' :
        // 返回xml格式数据
        header('Content-Type:text/xml; charset=utf-8');
        exit(xml_encode($data));
      case 'JSONP':
        // 返回JSON数据格式到客户端 包含状态信息
        header('Content-Type:application/json; charset=utf-8');
        $handler =  isset($_GET[C('VAR_JSONP_HANDLER')]) ? $_GET[C('VAR_JSONP_HANDLER')] : C('DEFAULT_JSONP_HANDLER');
        exit($handler.'('.json_encode($data).');');
      case 'EVAL' :
        // 返回可执行的js脚本
        header('Content-Type:text/html; charset=utf-8');
        exit($data);
      default   :
        // 用于扩展其他返回格式数据
        tag('ajax_return',$data);
    }
}

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

PHP 相关文章推荐
js下函数般调用正则的方法附代码
Jun 22 PHP
PHP 身份证号验证函数
May 07 PHP
PHP小教程之实现链表
Jun 09 PHP
php常用hash加密函数
Nov 22 PHP
php简单实现快速排序的方法
Apr 04 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
PHP生成各种常见验证码和Ajax验证过程
Jan 10 PHP
Yii2中datetime类的使用
Dec 17 PHP
Yii2配置Nginx伪静态的方法
May 05 PHP
php表单文件iframe异步上传实例讲解
Jul 26 PHP
PHP工厂模式的日常使用
Mar 20 PHP
PHP面向对象程序设计重载(overloading)操作详解
Jun 13 PHP
php中引用&的用法分析【变量引用,函数引用,对象引用】
Dec 12 #PHP
简单谈谈PHP中的Reload操作
Dec 12 #PHP
php的laravel框架快速集成微信登录的方法
Dec 12 #PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
Dec 12 #PHP
php+ajax+json 详解及实例代码
Dec 12 #PHP
解决微信授权回调页面域名只能设置一个的问题
Dec 11 #PHP
Zend Framework数据库操作方法实例总结
Dec 11 #PHP
You might like
PHP中用正则表达式清除字符串的空白
2011/01/17 PHP
6个超实用的PHP代码片段
2015/08/10 PHP
php服务器的系统详解
2019/10/12 PHP
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
jquery text(),val(),html()方法区别总结
2013/11/04 Javascript
使用原生JS实现弹出层特效
2014/12/22 Javascript
jquery解决客户端跨域访问问题
2015/01/06 Javascript
javascript下拉框选项单击事件的例子分享
2015/03/04 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
jQuery弹出遮罩层效果完整示例
2016/09/13 Javascript
node.js学习之base64编码解码
2016/10/21 Javascript
jQuery grep()方法详解及实例代码
2016/10/30 Javascript
2种简单的js倒计时方式
2017/10/20 Javascript
vue2实现数据请求显示loading图
2017/11/28 Javascript
使用jquery DataTable和ajax向页面显示数据列表的方法
2018/08/09 jQuery
Angular angular-file-upload文件上传的示例代码
2018/08/23 Javascript
js实现图片3D轮播效果
2019/09/21 Javascript
微信小程序制作扭蛋机代码实例
2019/09/24 Javascript
Python使用asyncio包处理并发详解
2017/09/09 Python
浅谈pandas中DataFrame关于显示值省略的解决方法
2018/04/08 Python
解决Tensorflow使用pip安装后没有model目录的问题
2018/06/13 Python
使用Python AIML搭建聊天机器人的方法示例
2018/07/09 Python
pycharm中使用anaconda部署python环境的方法步骤
2018/12/19 Python
Jupyter Notebook 实现正常显示中文和负号
2020/04/24 Python
python空元组在all中返回结果详解
2020/12/15 Python
如何用Matlab和Python读取Netcdf文件
2021/02/19 Python
ECCO爱步美国官网:来自丹麦的鞋履品牌
2016/11/23 全球购物
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
求职自荐书范文
2013/12/04 职场文书
职工年度考核评语
2014/12/31 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
同乡会致辞
2015/07/30 职场文书
Python语言中的数据类型-序列
2022/02/24 Python
CSS子盒子水平和垂直居中的五种方法
2022/07/23 HTML / CSS