datagrid php json,thinkphp和easyui结合中,datagrid等容器获取json数据的方法

一直使用两者进行前后台开发,非常方便,但在datagrid中获取json数据并显示的时候碰到了问题,网上资料非常的少,基本都是jsp和php的,thinkphp框架的就没有了,可能非常简单,但本人刚学,又不喜欢看帮助文档,走了不少弯路,下面将问题及解决方法介绍一下。

一直以来思维方式固定在了thinkphp的控制器方法中,总是以为动态的__URL__/data可以显示,但忽略了easyui的调取。

解决历程:

直接在datagrid的url属性中:__URL__/data

失败!

想在thinkphp中生成json数据文件,未找到此功能

失败!

后来转换思路,生成shtml文件,成功,但太繁琐,不实用

失败!

继续转换思路,直接生成模板文件,原来是如此简单,要多变通啊

成功!

下面将代码贴出,新手或者遇到此问题未解决的同志们参考一下:

$renyuan=M('renyuan');//不解释

//     $shenqing=M('shenqing');

import("@.ORG.Page");//导入分页类

$tiaojian=array();//查询条件,设置数组

$tiaojian['sqr_sq_id']=$_SESSION['sq_id'];//查询条件,不解释

$tiaojian['sqr_dw_id']=$_SESSION['sqdwid'];

$total = $renyuan->where($tiaojian)->count();    //计算总数

$page= new Page ( $total, 10 ); //分类总数与每页默认显示数

$rylist=$renyuan->page($_REQUEST['page'].',10')->order('id desc')->where($tiaojian)->select();//注意一下,request['page']是获取页面数,page是easyui后台传输的参数,后面的10可以更改为request['rows'],同page参数,可以在easyui的datagrid中动态更改每页的显示数

//     $tiaojian1=array();

//     $tiaojian1['id']=$_SESSION['sq_id'];

//     $sq=$shenqing->where($tiaojian1)->find();

$show=$page->show();

$abc='{"total":'.$total.',"rows":'.json_encode($rylist).'}'//重要,这才是easyui的标准数据格式,数据总数和数据内容在同一个json中

$this->assign('abc',$abc);

//     $this->assign('sq',$sq);

$this->assign('page',$show);

$this->display();

好了,结束,看一下效果

40716995_3.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值