整理一下以前的总结:

  分页包括前台分页和后台分页两种,针对数据量比较小的,比如说单位,角色等,可以使用前台分页,而针对日志文件这些,需要后台分页。

  先说说前台分页吧:

function pagerFilter(data){

if (typeof data.length == 'number' && typeof data.splice == 'function'){ // 判断数据是否是数组

data = {

total: data.length,

rows: data

}

}

var dg = $(this);

var opts = dg.datagrid('options');

var pager = dg.datagrid('getPager');

pager.pagination({

onSelectPage:function(pageNum, pageSize){

opts.pageNumber = pageNum;

opts.pageSize = pageSize;

pager.pagination('refresh',{

pageNumber:pageNum,

pageSize:pageSize

});

dg.datagrid('loadData',data);

}

});

if (!data.originalRows){

data.originalRows = (data.rows);

}

var start = (opts.pageNumber-1)*parseInt(opts.pageSize);

var end = start + parseInt(opts.pageSize);

data.rows = (data.originalRows.slice(start, end));

return data;

}

$(function(){//加载数据

$('#dg').datagrid({loadFilter:pagerFilter}).datagrid('loadData', getData()); //这里获取所有的数据,然后放到datagrid中。然后修改loadFilter事件,指定数据源。

});

  然后说后台分页吧,easyUI datagrid有一个参数queryParams,这个参数指定的是远程请求数据时指定的查询参数,所以,有两种解决方案:

  1,修改修改datagrid的load里面的参数:

load

param

加载和显示第一页的所有行。如果指定了'param',它将取代'queryParams'属性。通常可以通过传递一些参数执行一次查询,通过调用这个方法从服务器加载新数据。

$('#dg').datagrid('load',{

code: '01',

name: 'name01'

});

  这里实际上改变的是datagrid里面的queryParams参数,这个可以在点击查询的时候来调用这个方法修改查询参数,这样在上一页,下一页和刷新中都能更新新的参数

  2,修改datagrid里面的onSelect方法,和页数变化方法

$("#egcPlanDg" ).datagrid("getPager" ).pagination({

onSelectPage:function(pageNumber, pageSize){

searchEgcPlan(pageNumber);

},

onRefresh:function(pageNumber,pageSize){

searchEgcPlan(pageNumber);

},

onChangePageSize:function(pageSize){

searchEgcPlan(1);

}

});

最新文章

  1. android 在使用ViewAnimationUtils.createCircularReveal()无法兼容低版本的情况下,另行实现圆形scale动画
  2. PHP----Ajax异步请求
  3. Struts2上传大小限制
  4. Go prepare statment超过mysql最大数
  5. 从linux系统mysql导出数据库
  6. python 数据结构-集合set
  7. Factorization Machines 学习笔记(三)回归和分类
  8. Android学习笔记(三)Android开发环境的搭建
  9. IO的五种模型
  10. uva 10391
  11. JAVA之旅(四)——面向对象思想,成员/局部变量,匿名对象,封装 , private,构造方法,构造代码块
  12. 第十七节: EF的CodeFirst模式的四种初始化策略和通过Migration进行数据的迁移
  13. vue根据路由变换,切换导航栏样式
  14. [转帖] 百度知道: KMS 和OSPP
  15. 微信小程序ext_json示例
  16. 第35章:MongoDB-集群--Master Slave(主从复制)
  17. 作业6小学生四则运算测试APP的NABCD模型
  18. 02_Python简单爬虫(熊猫直播LOL的up主,谁最强!)
  19. gleez安装报错
  20. vue实现图片点击放大

热门文章

  1. CodeForces - 985F Isomorphic Strings
  2. SQL常用函数之五 str()
  3. Excel设置下拉菜单并隐藏下拉菜单来源单元格内容
  4. Android kernel Crash后,定位出错点的方法
  5. VMware报错“原因: 未能锁定文件”,打开失败
  6. ES6里的修饰器Decorator
  7. (转)指针的引用(*&)与指针的指针(**)
  8. ElasticSearch测试数据
  9. FormData上传文件同时附带其他参数
  10. PHP Warning: 的解决方法