EasyUI学习笔记---Datagrid真分页
EasyUI Datagrid组件在我看来功能还是很强大的,在我使用过程中遇到分页请求的问题困扰了一天才解决,下面我就把我遇到的问题分享一下
//datagrid数据表格渲染
$("#dg").datagrid({
loader: function(param, success, error) {
var pageNumber = param.page;
var pageSize = param.rows;
$.ajax({
type: "get",
url: url,
dataType: 'jsonp',
data: "pageNum=" + pageNumber + "&pageSize=" + pageSize,
success: function(data) {
if(data.code == 0) {
var arr = data.result.content;
$("#dg").datagrid('loadData', { total: data.result.page.totalRecord, rows: arr })
}
},
error: function() {
error.apply(this, arguments);
}
});
}
})
传入的参数有param, success, error可选
这里我主要用到了param,param有param.page(页码)和param.rows(每页显示行数)两个属性,由于页面载入之后就要进行查询,所以这个参数是必须的;
一 遇到的第一个问题是跨域,这个在之前的文章有些过,这里就不赘述了;
二 其次就是请求回的数据怎么渲染到表格中,由于是真分页,所以每次查询的数据只是当前页面的数据,并不是所有的数据,但是页脚显示数据总数必须是所有数据,这样才能就行分页。
最后通过查看资料发现,loadData方法可以传入一个json格式的数据$("#dg").datagrid('loadData', { total: data.result.page.totalRecord, rows: arr }),这样就解决了数据渲染分页请求的问题
三 由于我启用了loadMsg属性,即在请求后台数据的时候会显示正在加载的状态,但是请求成功之后此状态并未隐藏,最后通过设置
onLoadSuccess: function(data) {
//查询成功是隐藏正在加载状态。
$(this).datagrid("loaded");
}
在数据加载成功之后隐藏正在加载状态
四 点击下一页进行查询
//点击下一页
$('#dg').datagrid('getPager').pagination({
//刷新按钮执行的操作
onBeforeRefresh: function() {},
onSelectPage: function(pageNumber, pageSize) {
$("#dg").datagrid('loading'); //显示加载信息
$.ajax({
type: "get",
url: url,
dataType: 'jsonp',
data: "pageNum=" + pageNumber + "&pageSize=" + pageSize ,
success: function(data) {
if(data.code == 0) {
//数据返回成功后填充到表格中
var arr = data.result.content;
$("#dg").datagrid('loadData', { total: data.result.page.totalRecord, rows: arr })
}
},
error: function() {
error.apply(this, arguments);
}
})
}
});
EasyUI学习笔记---Datagrid真分页的更多相关文章
- easyui学习笔记2—在行内进行表格的增删改操作
第一篇笔记中记录了如何实现表格的增删改,那个是点击之后跳出来一个对话框然后进行的,这里是在表格本身上进行的操作,也很简单,但是这里发现一个版本问题,也可以说是兼容性问题. 1.首先我们看引用的js和c ...
- MyBatis-Plus学习笔记(3):分页查询
依赖配置可参考:MyBatis-Plus学习笔记(1):环境搭建以及基本的CRUD操作 分页配置 @Configuration public class PlusConfig { @Bean publ ...
- 关于Jquery EasyUI中的DataGrid服务器端分页随记
一.关于DataGrid的分页和排序参数 对于分页参数不需要用户指定,程序在AJAX请求的时候会带上分页和排序需要的参数 每页显示条数:rows 当前页:page 排序字段:sort [multiS ...
- easyUI学习笔记二
1. 拖拉大小 <!DOCTYPE html> <html> <head> <title>easyui学习</title> <scr ...
- easyUI学习笔记一
1.引用js文件 <script type="text/javascript" src = jquery-easyui/jquery.min.js> </scri ...
- EasyUI学习笔记(四)—— datagrid的使用
一.传统的HTML表格 之前我们做表格的时候是这样写的: <table > <thead> <tr> <th>编号</th> <th& ...
- JQuery EasyUI学习笔记
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6690888.html 简介与准备 jQuery EasyUI 是一个基于 jQuery 的框架,集成了各种用 ...
- easyui学习笔记1—增删改操作
最近公司要用easyui,这里自己看了官网几篇文章,遇到些问题,大多数的问题都是敲代码的时候笔误,其他有些地方确实需要注意一下,这里做些笔记. 1.在mysql中建好表之后修改id字段为递增字段,发现 ...
- easyUi 学习笔记 (二 ) 使用tabs 里datagridview 发送ajax请求 不访问后台的问题
这个BUG 我花了一个半小时, 还是看不出哪里的问题, 于是就百度到这么一段话,我需要记住 <================================================= ...
随机推荐
- Linux性能及调优指南(翻译)之Linux进程管理
本文为IBM RedBook的Linux Performanceand Tuning Guidelines的1.1节的翻译原文地址:http://www.redbooks.ibm.com/redpap ...
- Java后台实现方法
Java后台实现方法 首先后台结构分为四个部分(以表schedule为例) entity>mapper>service>controller 1. 在entity里面写好实体,新建目 ...
- JSP具体篇——response对象
response对象 response对象用于响应client请求,向客户输出信息. 他封装了JSP产生的响应,并发送到client以响应client请求. 1.重定向网页 使用response对象的 ...
- RUP 方法简介
1.什么是RUP: Rational Unified Process(以下简称RUP) 是一套软件工程方法,主要由 Ivar Jacobson的 The Objectory Approch 和 The ...
- IO流(File类,IO流的分类,字节流和字符流,转换流,缓冲流,对象序列化)
1.File类 File类可以在程序中 操作文件和目录.File类是通过建立File类对象,在调用File类的对象来进行相关操作的. 示例: public class Demo01 { public ...
- MVC+EF 入门教程(一)
一.前言 本人小白,写这篇博客是为了记录今天一天所学的知识,可能表达不是那么的准确和清楚,欢迎在留言区写下您的建议,欢迎纠错.希望这篇文章对你有所帮助学习 .Net MVC有所帮助.废话不多说了,我们 ...
- NYOJ915——+-字符串
+-字符串 时间限制:1000 ms | 内存限制:65535 KB 难度:1 描述 Shiva得到了两个只有加号和减号的字符串,字串长度相同.Shiva一次可以把一个加号和它相邻的减号交换. ...
- Data Base mongodb高版本与低版本的区别
mongodb高版本与低版本的区别 一.mongodb引擎: Mongodb 3.0支持用户自定义存储引擎,用户可配置使用mmapv1或者wiredTiger存储引擎. 3.2版本以后默认的开启的是w ...
- OC学习14——谓词
一.谓词的基本概念与使用 1.谓词(NSPredicate)用于定义一个逻辑条件,通过该条件可执行搜索或内存中的过滤操作.上一篇文章中介绍的集合都提供了使用谓词对集合进行过滤的方法.OC中的谓词操作是 ...
- Python3 学习Python流程--试水中
二.基础语法之后可以搭载服务器练习: 教程 一.1.Python 搭建环境. 初学基本语法 :Python基本语法 2.推荐 IDE : PyCharm CE 下载 菜鸟教程都是基础语法,可以对py ...