解决dwz增删改查不局部刷新的办法

一个小项目,用到了dwz,苦于官方少于维护且需要一部分前端技术一直没有深挖,迫在眉睫,遇到了跟很多人一样的问题,就是增删改查不能局部刷新,苦恼啊。经多多放查找资料和翻阅源码终于皇天不负有心。

项目使用TP3.1.3

需要做一下修改

找到 Thinkphp/lib/core/Action.class.php

查找 ajaxReturn 方法

注释掉

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):'';
}

然后在下方添加

if(method_exists($this,"ajaxAssign")) $this->ajaxAssign($data);//ajax赋值扩展

完整代码如下

/**
     * Ajax方式返回数据到客户端
     * @access protected
     * @param mixed $data 要返回的数据
     * @param String $type AJAX返回数据格式
     * @return void
     */
    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):'';
//        }
        if(method_exists($this,"ajaxAssign")) $this->ajaxAssign($data);//ajax赋值扩展
        if(empty($type)) $type  =   C('DEFAULT_AJAX_RETURN');
        switch (strtoupper($type)){
            case 'JSON' :
                // 返回JSON数据格式到客户端 包含状态信息
                //header('Content-Type:application/json; charset=utf-8');
                 header('Content-Type:text/html; charset=utf-8'); //zhanghuihua
                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);
        }
}

在任意一出添加

protected function ajaxAssign(&$result){
        $result['statusCode']  =  $result['status'];
        $result['navTabId']  =  $_REQUEST['navTabId'];
        $result['message']=$result['info'];
}

退出DWZ,重新登录 再试试吧!

时间: 2024-12-10 02:32:56

解决dwz增删改查不局部刷新的办法的相关文章

增删改查-求大神解决啊 用c语言

问题描述 求大神解决啊 用c语言 1.使用结构体保存学生信息,学生信息包含学号,姓名,性别,班级,语文成绩,数学成绩 2.用户可以进行学生信息的增删改查,要求使用switch为用户提供增删该查选项 3.在主函数中提供增删改查选项,使用函数完成增删该查具体功能 解决方案 http://zhidao.baidu.com/link?url=sOPqZ98X7FdSx7mCX12eUkiaaPIHPQe1GWfzrfU-QAwX0NWcXXfFEDu8vu25MftOxlmdqXMvFoNoPCVZ_R

java-spring 多表增删改查 多次操作不刷新

问题描述 spring 多表增删改查 多次操作不刷新 不知道是jsp页面代码的问题 还是控制器写的有问题 增加连续写到第3个吗四个服务器就不动了 也不报错 主要的控制器部分代码如下 ?@RequestMapping(value = "/addRiddle") public String addRiddle (Riddle riddle, HttpServletRequest request) { riddleServ.save(riddle); return this.getAllRi

对增删改查用面向对象进行包装

已经有两年多没有做过这种后台的增删改查的工作了,最近突然接到这种性质 的工作,觉的如果还是和以前一样做的话,是不是有点太泛味了,之前的一年多本人 学习了设计模式,对面向对象的理解比以前有所增加.理解当然的想起代码重构. 增删改查,从字面上来讲,无非就是四个操作,如果我们非要定义一个名称的 话,我是这样定义的,ADD,Delete,Update,GetList,也就是说无论是针对哪张 表的维护无外乎这四个操作,唯一的不同就是每个表在维护时对于实体的操作不 同,我们一般都会把数据库的表映射到相应的实

Solr配置中文分词器IKAnalyzer及增删改查调用

一.配置IKAnalyzer中文分词器 Solr 版本5.2.1 IKAnalyzer2012_u6.jar报错 ,用IKAnalyzer2012_FF_hf1.jar 替换可解决 解决lucene4.0与IKAnalyzer的冲突.解决Exception in thread "main" java.lang.VerifyError: class org.wltea.analyzer.lucene.IKAnalyzer overrides final method tokenStrea

告别无止境的增删改查--Java代码生成器

转自:http://www.cnblogs.com/zhuYears/archive/2012/02/29/2373491.html 告别无止境的增删改查--Java代码生成器   有感于马上要做个比较大的业务系统,想到那无止境的增删改查.粘贴复制,顿时脑后升起一阵凉风.于是想到个找或者写一个Java代码的生成器,这样在正常开发进度下,也能余下更多的时间去做些别的事情. 闲话少说,首先总结下需求: 我需要的这个工具能够读取数据库表结构,通过对字段类型.名称等分析得到需要的各种变量,根据模板生成相

二、SQL语句映射文件(2)增删改查、参数、缓存

 二.SQL语句映射文件(2)增删改查.参数.缓存 2013-09-06 17:05:42 标签:配置文件 动态 元素 MyBatis学习 之 一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 二.SQL语句映射文件(1)resultMap MyBatis学习 之 二.SQL语句映射文件(2)增删改查.参数.缓存 MyBatis学习 之 三.动态SQL语句 MyBatis学习 之 四.MyBatis配置文件 2.2 select 一个select 元素

ofbiz 增删改查-ofbiz增删改查,页面能跳转,但无法对数据进行操作

问题描述 ofbiz增删改查,页面能跳转,但无法对数据进行操作 上面是,修改的页面,对其修改能跳转页面,但是数据不会被处理,在浏览器里面调试, 所呈现 的是最上面的错误:初次接触这些,不知如何解决,请求指教! 解决方案 http://download.csdn.net/detail/jiangnan8710/6728215

junit-MyEclipse用Junit测试Hibernate的增删改查出错

问题描述 MyEclipse用Junit测试Hibernate的增删改查出错 我在用myeclipse用Junit测试Hibernate的增删改查时,每次执行某个方法,其它的方法也跟着 执行:比如我先写了个add方法来向数据库插入数据没有问题,然后再写个方法来查询数据库里 的数据时,那个add方法又会自动执行一遍,请问这是怎么回事,该如何解决 解决方案 看一下图片,可以选中指定的方法执行! 解决方案二: http://blog.csdn.net/sias1991/article/details/

构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查

原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下.这讲主要是,制作漂亮的工具栏,虽然easyui的datagrid已经自带可以设置工具栏,我们还是要提取出来,为以后权限控制做更好的准备. 前端代码没有逻辑结果,这也许是我写代码以来写得最轻松的,但也是最繁琐的,因为美工我不是强项,每一次调整都非