0

0

求个php+ajax+easyUI datagrid的简单完整的demo

php中文网

php中文网

发布时间:2016-06-23 14:01:37

|

1099人浏览过

|

来源于php中文网

原创

如题,求个用ajax局部刷新easyUI数据表格的实例,简单完整就好


回复讨论(解决方案)

这里有个小demo,写得比较乱不知道怎么用

用户资料    public function index() {        //搜索        if($this->isAjax())        {            $type = $_POST['type'];            $uservalue = $_POST['uservalue'];            $gametype = $_POST['gametype'];            $channeltype = $_POST['channeltype'];            $moneytype = $_POST['moneytype'];            $sdate = $_POST['sdate'];            $edate = $_POST['edate'];            if(empty($uservalue)) die(json_encode(array("total"=>0,"rows"=>array())));            if ($type=='username' || $type == 'nickname') {                if($type == 'username') {                    $where = "username = '".$uservalue."'";                }elseif($type == 'nickname') {                    $where = "nick_name = '".$uservalue."'";                }                $userInfo = $this->model->where($where)->select();                $userid = $userInfo['userid'];            }else {                $userid = $uservalue;            }            if (empty($userid))  {                $this->error('请输入正确的用户ID','',true);            }            //判断时间            $startdate=strtotime($sdate);            $enddate=strtotime($edate);            if(empty($startdate) || empty($enddate)) {                $this->error('开始时间和结束时间不能为空','',true);            }            if($startdate > $enddate) {                $this->error('结束时间小于开始时间','',true);            }            $days=round(($enddate-$startdate)/3600/24) ;            if($days >7) {               $this->error('查询数据大于7天了,建议选择上小于7天进行查询','',true);            }            $j=0;            $exdata = explode('-',$sdate);            $gamemodel = $this->selDb('LOG');            $accs = array();            $games = array();            for($i = strtotime($sdate); $i <= strtotime($edate); $i += 86400) {                $y=mktime(0,0,0,$exdata[1],$exdata[2],$exdata[0]);                $t=date("Ymd",$y+$j*24*3600);                $j++;                //通过天数分库的->field('userid,moneychange,moneytype,ts,moneyfrom')                $sql1 ="select userid,moneychange,moneytype,ts,moneyfrom,user_accunt_change_date from ".$this->accTName.$t." where  userid = '$userid' AND moneytype in($moneytype) AND moneyfrom in ($channeltype) group by userid,moneyfrom,moneytype";                $sql ="select userid,moneychange,moneytype,gameid,ts,moneyfrom,game_win_log_date from ".$this->gameWinName.$t." where  userid = '$userid' AND moneytype in($moneytype) AND moneyfrom in ($channeltype) AND gameid in ($gametype) group by userid,gameid";                $games[] = $gamemodel->query($sql);                $accs[] = $gamemodel->query($sql1);            }            //合并数据            $arr = array();            $brr = array();            if(!empty($accs)) {                foreach($accs as $k=>$v) {                    if(empty($v)) {                        unset($accs[$k]);                    }else {                        foreach($v as $kk=>$vv) {                            $vv['data'] = $vv['user_accunt_change_date'];                            $vv['flag'] = 'account';                            $arr[] = $vv;                        }                    }                }            }            if(!empty($games)) {                //合并数据                foreach($games as $k=>$v) {                    if(empty($v)) {                        unset($games[$k]);                    }else {                        foreach($v as $kk=>$vv) {                            $vv['data'] = $vv['game_win_log_date'];                            $vv['flag'] = 'game';                            $brr[] = $vv;                        }                    }                }            }            $result = array_merge($arr,$brr);            die(json_encode(array('total'=>count($result),"rows"=>$result?$result:array())));            //查询game_win_log_时间和user_acount_change_log_时间两个表中的综合数据        }        $this->display();    }jquery$("#datagrid").datagrid("selectRow",index);var row = $("#datagrid").datagrid("getSelected");    //搜索    function searchform(){        //$("#datagrid").datagrid("load",vac.serializeObject($("#searchForm"));        vac.ajax('/UserManage/index', vac.serializeObject($("#searchForm")), 'POST', function(r){            if(r.status != undefined){                vac.alert(r.info);            }else{                $("#datagrid").datagrid("loadData",r);            }        });    }返回值处理    /**     +----------------------------------------------------------     * Ajax方式返回数据到客户端     +----------------------------------------------------------     * @access protected     +----------------------------------------------------------     * @param mixed $data 要返回的数据     * @param String $info 提示信息     * @param boolean $status 返回状态     * @param String $status ajax返回类型 JSON XML     +----------------------------------------------------------     * @return void     +----------------------------------------------------------     */    protected function ajaxReturn($data,$info='',$status=1,$type='') {        $result  =  array();       $result['status']  =  $status;        $result['info'] =  $info;        $result['data'] = $data;        //扩展ajax返回数据, 在Action中定义function ajaxAssign(&$result){} 方法 扩展ajax返回数据。        if(method_exists($this,'ajaxAssign'))             $this->ajaxAssign($result);        if(empty($type)) $type  =   C('DEFAULT_AJAX_RETURN');        if(strtoupper($type)=='JSON') {            // 返回JSON数据格式到客户端 包含状态信息            header('Content-Type:text/html; charset=utf-8');            exit(json_encode($result));        }elseif(strtoupper($type)=='XML'){            // 返回xml格式数据            header('Content-Type:text/xml; charset=utf-8');            exit(xml_encode($result));        }elseif(strtoupper($type)=='EVAL'){            // 返回可执行的js脚本            header('Content-Type:text/html; charset=utf-8');            exit($data);        }else{            // TODO 增加其它格式        }    }

使用easyui-grid控件的updateRow方法进行指定行的更新来达到局部更新的作用

$('#dg').datagrid('updateRow',{	index: 2,	row: {		name: 'new name',		note: 'new note message'	}});

其row的数据由ajax请求得到(你在php里面最好返回的是json格式,而不是xml)   再使用该方法去局部更新,其他详情自己看 官方doc

使用easyui-grid控件的updateRow方法进行指定行的更新来达到局部更新的作用

$('#dg').datagrid('updateRow',{	index: 2,	row: {		name: 'new name',		note: 'new note message'	}});

其row的数据由ajax请求得到(你在php里面最好返回的是json格式,而不是xml)   再使用该方法去局部更新,其他详情自己看 官方doc
在页面中有一个easyUI的datagrid,怎么用ajax来更新这个表格的数据呢?

ColorMagic
ColorMagic

AI调色板生成工具

下载

看你js版块的帖子

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
漫蛙app官网链接入口
漫蛙app官网链接入口

漫蛙App官网提供多条稳定入口,包括 https://manwa.me、https

41

2026.02.27

deepseek在线提问
deepseek在线提问

本合集汇总了DeepSeek在线提问技巧与免登录使用入口,助你快速上手AI对话、写作、分析等功能。阅读专题下面的文章了解更多详细内容。

2

2026.02.27

AO3官网直接进入
AO3官网直接进入

AO3官网最新入口合集,汇总2026年可用官方及镜像链接,助你快速稳定访问Archive of Our Own平台。阅读专题下面的文章了解更多详细内容。

28

2026.02.27

php框架基础教程
php框架基础教程

本合集涵盖2026年最新PHP框架入门知识与基础教程,适合初学者快速掌握主流框架核心概念与使用方法。阅读专题下面的文章了解更多详细内容。

1

2026.02.27

php框架怎么用
php框架怎么用

本合集专为零基础学习者打造,系统介绍主流PHP框架的安装、配置与基础用法,助你快速入门Web开发。阅读专题下面的文章了解更多详细内容。

2

2026.02.27

无禁词AI聊天软件下载大全
无禁词AI聊天软件下载大全

本合集精选多款免费、无违禁词限制的AI聊天软件,支持自定义角色、剧情畅聊,体验真实互动感。阅读专题下面的文章了解更多详细内容。

6

2026.02.27

ai志愿助手2026
ai志愿助手2026

本合集汇总了2026年主流AI志愿助手官方入口及官网地址,涵盖圆梦志愿、蝶变志愿等智能填报平台,助你高效精准填志愿。阅读专题下面的文章了解更多详细内容。

1

2026.02.27

高清视频免费观看软件
高清视频免费观看软件

精选多款高清视频免费观看软件,涵盖海量电视剧、电影、综艺等资源,支持在线播放、无广告干扰、画质清晰流畅。阅读专题下面的文章了解更多详细内容。

8

2026.02.27

快看漫画地址大全
快看漫画地址大全

2026年快看漫画官方入口、APP下载地址及网页版在线阅读地址汇总,涵盖平台最新功能与热门作品推荐。阅读专题下面的文章了解更多详细内容

1

2026.02.27

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号