jQuery MiniUI

 找回密码
 立即注册
查看: 4226|回复: 8
打印 上一主题 下一主题

datagrid 分页问题请教 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-10-15 08:36:37 |只看该作者 |倒序浏览
请教一下,datagrid 分页,我第一次得到总条数后,能不能不再从后台计算,点下一页的时候自动保存上次的总条数

Rank: 8Rank: 8

沙发
发表于 2013-10-15 09:19:08 |只看该作者
数据总数?
前台grid.getTotalCount()可以获取出来

Rank: 2

板凳
发表于 2013-10-15 09:36:21 |只看该作者
是的,我能过load(),success方法得到了这个值, 但当点击下一页的时候这个值会被第二次请求的total所替代。我在第二次请求的时候total我是不想计算的(开效大)。第二次请求我主动丢弃total属性,只保留data,结果总条数变为0(默认值了)。
如果将success得到的totacountl当参数第二次传后台,又要怎么做,我目前的代码是这样的,这个totalcount我都不知道怎么传了。
var form = new mini.Form("#cguestform");            
  var data = form.getData();      //获取表单多个控件的数据
  qdg.load(data,function(e){
      if(qdg.pageIndex==0)
         total = qdg.totalCount;
  });

Rank: 8Rank: 8

地板
发表于 2013-10-15 10:15:37 |只看该作者
moroc 发表于 2013-10-15 09:36
是的,我能过load(),success方法得到了这个值, 但当点击下一页的时候这个值会被第二次请求的total所替代。 ...

你可以把total存在一个变量里面,或者session,或者cookie都行.

Rank: 2

5#
发表于 2013-10-15 10:51:07 |只看该作者
已经放全局变量里了,只是这个变量怎么再到datagrid,什么时候set进去?
我在事件load里set进去了,total可以不传,分页总数与每页数也都计算正确,不过分页永远停在第一页了,点下页没有用。

qdg.on("load",function(e){
   if(qdg.pageIndex!=0){
      qdg.setTotalCount(total);
   }
});

Rank: 8Rank: 8

6#
发表于 2013-10-15 11:05:09 |只看该作者
moroc 发表于 2013-10-15 10:51
已经放全局变量里了,只是这个变量怎么再到datagrid,什么时候set进去?
我在事件load里set进去了,total可 ...

每次onload里判断你的那个全局变量是否有值,有值就给表格设置total,gird.setTotalCount()

Rank: 2

7#
发表于 2013-10-15 11:22:00 |只看该作者
在load事件是可以这样做,分页显示正常,只是显示正常。不过点击第二页后,分页量还是显示1。

Rank: 8Rank: 8

8#
发表于 2013-10-15 11:33:52 |只看该作者
moroc 发表于 2013-10-15 11:22
在load事件是可以这样做,分页显示正常,只是显示正常。不过点击第二页后,分页量还是显示1。 ...

你这样把,你的这个total还是保存在后台.然后每次返回数据的时候
{
   total:total,
   data:[..]
}

如果total有值,就直接用total,没有再通过数据库获得

Rank: 2

9#
发表于 2013-10-15 13:34:59 |只看该作者
好的,谢谢!

Archiver|普加软件

GMT+8, 2024-11-26 17:47 , Processed in 1.034997 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部