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 相关文章推荐
js 图片缩放(按比例)控制代码
May 27 Javascript
javascript 窗口加载蒙板 内嵌网页内容
Nov 19 Javascript
Js 弹出框口并返回值的两种常用方法
Dec 30 Javascript
jquery插件实现鼠标经过图片右侧显示大图的效果(类似淘宝)
Feb 04 Javascript
javascript关于运动的各种问题经典总结
Apr 27 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
Jun 07 Javascript
JS实现控制图片显示大小的方法【图片等比例缩放功能】
Feb 18 Javascript
JavaScript之underscore_动力节点Java学院整理
Jul 03 Javascript
JS二分查找算法详解
Nov 01 Javascript
vue项目中公用footer组件底部位置的适配问题
May 10 Javascript
用Golang运行JavaScript的实现示例
Nov 25 Javascript
VUE 动态组件的应用案例分析
Dec 02 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
PHP生成带有雪花背景的验证码
2008/09/28 PHP
PHP 身份验证方面的函数
2009/10/11 PHP
Symfony2框架学习笔记之表单用法详解
2016/03/18 PHP
网站被黑的假象--ARP欺骗之页面中加入一段js
2007/05/16 Javascript
jquery 事件对象属性小结
2010/04/27 Javascript
js简单实现让文本框内容逐个字的显示出来
2013/10/22 Javascript
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
使用js画图之画切线
2015/01/12 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
2015/06/24 Javascript
javascript类型系统——日期Date对象全面了解
2016/07/13 Javascript
jQuery zTree搜索-关键字查询 递归无限层功能实现代码
2018/01/25 jQuery
JS伪继承prototype实现方法示例
2018/06/20 Javascript
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
详解小程序如何避免多次点击,重复触发事件
2019/04/08 Javascript
JavaScript实现简单的计算器
2020/01/16 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
Python中条件选择和循环语句使用方法介绍
2013/03/13 Python
Python实现脚本锁功能(同时只能执行一个脚本)
2017/05/10 Python
简单实现python进度条脚本
2017/12/18 Python
python实现定时自动备份文件到其他主机的实例代码
2018/02/23 Python
Python 数值区间处理_对interval 库的快速入门详解
2018/11/16 Python
python实现归并排序算法
2018/11/22 Python
python使用PIL和matplotlib获取图片像素点并合并解析
2019/09/10 Python
python ctypes库2_指定参数类型和返回类型详解
2019/11/19 Python
详解Ubuntu环境下部署Django+uwsgi+nginx总结
2020/04/02 Python
详解如何在css3打包后自动追加前缀插件:autoprefixer
2018/12/18 HTML / CSS
美国最大的宠物药店:1-800-PetMeds
2016/10/02 全球购物
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
中科软测试工程师面试题
2012/06/16 面试题
焊接专业毕业生求职信
2013/10/01 职场文书
大学生年度自我鉴定
2013/10/31 职场文书
通知的格式范文
2015/04/27 职场文书
Spring依赖注入多种类型数据的示例代码
2022/03/31 Java/Android
vue项目配置sass及引入外部scss文件
2022/04/14 Vue.js