easyUI使用分页过滤器对数据进行分页操作实例分析


Posted in Javascript onJune 01, 2020

本文实例讲述了easyUI使用分页过滤器对数据进行分页操作。分享给大家供大家参考,具体如下:

在后台管理系统中,由于数据量的庞大,我们经常需要用到easyui框架的分页工具。在本文章中,使用了分页过滤器进行分页的方法,示例如下:

easyUI使用分页过滤器对数据进行分页操作实例分析

代码如下:

HTML

<table id="wu-datagrid-stuInfo" class="easyui-datagrid" toolbar="#wu-toolbar-stuInfo">
</table>

JS代码

/**
 * 获取所有学员信息
 */
function show() {
  $.ajax({
    url: httpurl + '/jsrAdminWeb/selectAll',//连接后台接口
    type: 'post',
    dataType: 'json',
    contentType: "application/json",
    async: false, //false 同步

    success: function (result) {
      var stuData = result.data;
      getData();//铺页面(列)
      $("#wu-datagrid-stuInfo").datagrid("loadData", stuData);//加载数据表格
    }
  });
}

/**
 * 前台铺值
 */
function getData() {
  $("#wu-datagrid-stuInfo").datagrid({
    loadFilter: pagerFilter,//调用分页过滤器方法
    checkOnSelect: true,//当用户点击行的时候该复选框就会被选中或取消选中
    autoRowHeight: false,//自定义设置行的高度,根据该行的内容
    rownumbers: true,//显示一个行号列
    singleSelect: false,//可以一次选择多行
    // multiSort: true,//允许多列排序
    fit: true,
    columns: [[{
      field: 'id', //每一列的名字
      width: '50',
      title: 'ID',
      checkbox: true
    }, {
      field: 'stuName',
      title: '姓名',
      width: '100',
      align: 'center'
    }, {
      field: 'stuSex',
      title: '性别',
      width: '100',
      align: 'center'
    }, {
      field: 'stuAge',
      title: '年龄',
      width: '100',
      align: 'center'
    }, {
      field: 'stuIntroduce',
      title: '介绍',
      width: '700',
      align: 'center'
    }, {
      field: 'createTime',
      title: '创建时间',
      width: '130',
      align: 'center'
    }
    ]],
    idField: 'id',
    loadMsg: 'Processing, please wait …',
    pagination: true//将分页设置为true
  });
}

分页过滤器方法(写在js代码中):

注意:从后台取到的数据是全部的学生信息,这段代码,复制到JS代码里面就可以实现。

/**
 * 分页过滤器
 * @param data 全部数据
 * @returns {*}
 */
function pagerFilter(data) {
  if (typeof data.length == 'number' && typeof data.splice == 'function') {// is array
    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;
}

以上就是easyui使用分页过滤器实现前台数据分页的方法。如有错误,还望指正,谢谢。

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
HTML页面如何象ASP一样接受参数
Feb 07 Javascript
javascript 表单的友好用户体现
Jan 07 Javascript
ASP中进行HTML数据及JS数据编码函数
Nov 11 Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
Nov 24 Javascript
javascript日期比较方法实例分析
Jun 17 Javascript
AngularJS动态生成div的ID源码解析
Aug 29 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
Feb 15 Javascript
vue select组件的使用与禁用实现代码
Apr 10 Javascript
通过封装scroll.js 获取滚动条的值
Jul 13 Javascript
VUE v-for循环中每个item节点动态绑定不同函数的实例
Sep 26 Javascript
详解vue-router导航守卫
Jan 19 Javascript
微信小程序动态显示项目倒计时
Jun 20 Javascript
bootstrap-table后端分页功能完整实例
Jun 01 #Javascript
jQuery实现倒计时功能完整示例
Jun 01 #jQuery
微信小程序订阅消息(java后端实现)开发
Jun 01 #Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
Jun 01 #Javascript
微信小程序开发(二):页面跳转并传参操作示例
Jun 01 #Javascript
5个你不知道的JavaScript字符串处理库(小结)
Jun 01 #Javascript
基于Vue sessionStorage实现保留搜索框搜索内容
Jun 01 #Javascript
You might like
自己动手,丰衣足食 - 短波框形天线制作
2021/03/01 无线电
PHP 压缩文件夹的类代码
2009/11/05 PHP
PHP新手NOTICE错误常见解决方法
2011/12/07 PHP
php无限级分类实现方法分析
2016/10/19 PHP
PHP强制转化的形式整理
2020/05/22 PHP
JavaScript中的数组操作介绍
2014/12/30 Javascript
js中不同的height, top的区别对比
2015/09/24 Javascript
基于jquery步骤进度条源码分享
2015/11/12 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
2016/08/11 Javascript
bootstrap使用validate实现简单校验功能
2016/12/02 Javascript
layui分页效果实现代码
2017/05/19 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
js中script的上下放置区别,Dom的增删改创建操作实例分析
2019/12/16 Javascript
JS如何实现网站中PC端和手机端自动识别并跳转对应的代码
2020/01/08 Javascript
JavaScript实现简单动态表格
2020/12/02 Javascript
[43:43]完美世界DOTA2联赛PWL S2 FTD.C vs Rebirth 第一场 11.22
2020/11/24 DOTA
从零学Python之hello world
2014/05/21 Python
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
python3+PyQt5+Qt Designer实现扩展对话框
2018/04/20 Python
解决Pycharm无法import自己安装的第三方module问题
2018/05/18 Python
python实现字符串中字符分类及个数统计
2018/09/28 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
详解pandas安装若干异常及解决方案总结
2019/01/10 Python
Python常用的json标准库
2019/02/19 Python
TensorFlow加载模型时出错的解决方式
2020/02/06 Python
Python利用PyPDF2库获取PDF文件总页码实例
2020/04/03 Python
Pytorch转tflite方式
2020/05/25 Python
基于MUI框架使用HTML5实现的二维码扫描功能
2018/03/01 HTML / CSS
斯图尔特·韦茨曼鞋加拿大官网:Stuart Weitzman加拿大
2019/10/13 全球购物
婚礼证婚人证婚词
2014/01/13 职场文书
年会活动策划方案
2014/01/23 职场文书
超市中秋节活动方案
2014/02/12 职场文书
《落花生》教学反思
2014/02/25 职场文书
全陪导游词
2015/02/04 职场文书
tensorflow中的数据类型dtype用法说明
2021/05/26 Python
Golang二维数组的使用方式
2021/05/28 Golang