EasyUI基础入门之Pagination(分页)
前言
对于一些企业级的应用来说(非站点),页面上最为基本的内容也就是表格和form了。对于类似于ERP这类系统来说数据记录比較大,前端表格展示的时候必需得实现分页功能了。恰巧EasyUI就提供了分页组件Pagination
pagination覆盖默认$.fn.pagination.defaults.Pagination分页同意用户通过分页的方式来浏览数据,它支持可配置的选项,页面导航和页面长度的选择,并且用户能够加入�分页的右边定制button来增强分页功能。
只是pagination是依赖于linkbutton的,因此这里有必要了解下linkbutton。
linkbutton
使用$.fn.linkbutton.defaults重载默认值。
链接button用户创建超链接button。它是表示正常的<a>标记。能够显示图标和文字,或只不过图标或文字。button的宽度能够动态收缩/展开,以适应文本标签。依照惯例接下来看看其属性、事件、方法。
属性
| 名称 | 类型 | 描写叙述信息 | 默认值 |
| id | string | 该组件的唯一标示ID | null |
| disabled | boolean | 当设置为true时标示禁用该button | false |
| toggle | boolean | 设置为true时,用户能够改变button的状态为选择或取消选择,自版本号1.3.3開始 | false |
| selected | boolean | 表明该button的状态是否为选择,自1.3.3開始 | false |
| group | string | 表明哪些button在同一个组中,開始于1.3.3 | null |
| plain | boolean | 设置为true时会显示间接效果 | false |
| text | string | button上的文字 | null |
| iconCls | string | 在左边显示一个16*16大小图标的css类 | '' |
| iconAlign | string | button上图标显示的位置,可选值为left、right、top、bottom開始于1.3.2 | left |
| size | string | button的大小,可选值为small、large開始于1.3.6 | small |
事件
linkbutton提供了一个onclik事件,当按钮被点击时触发。開始于1.3.6
方法
| 名称 | 參数 | 描写叙述信息 |
| options | none | 返回属性对象 |
| disable | none |
禁用按钮 实例: $('#btn').linkbutton('disable') |
| enable | none | 启用button,用法类似上面 |
| select | none | 选择该button開始于1.3.6 |
| unselect | none | 取消选择,開始于1.3.6 |
使用方式
linkbutton相同提供两种使用方式。
1、通过html标记创建
<a id="btn" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">easyui</a>
2、通过js脚本创建
<a id="btn" href="#">easyui</a>
$('#btn').linkbutton({ iconCls: 'icon-search' });
以上两种方式都能够创建linkbutton。以下看简单的样例,对于主要的链接跳转这里就不多题了。
下面样例使用JQuery绑定单击处理函数给链接;
<body>
<a id="btn" href="www.baidu.com" class="easyui-linkbutton" data-options="iconCls:'icon-search'">easyui</a>
<script>
$(function () {
$('#btn').bind('click', function () {
alert('按钮被点击了');
});
});
</script>
</body>
好了,关于linkbutton大概也就这么多,我们能够简单的觉得其和普通的<a>标签没啥差别,仅仅是统一了easyui的样式。
Pagination
对于linkbutton有了一定的了解之后就能够着手学习pagination了,值域pagination为何会依赖于linkbutton,我想主要原因还是pagination提供分页右边按钮的定制化(那些个按钮就是linkbutton啦)。闲话不多说,相同从官网api開始走起。
使用$.fn.pagination.defaults重载默认值。
pagination同意用户导航数据页面。支持可配置选项页面当行和页面长度的选择。并且用户能够加入�自己定义button在正确的分页,增强功能。
依赖组件:linkbutton
属性
分页插件具有的属性还是比較的多的,详细有例如以下一些属性:
| 名称 | 类型 | 描写叙述信息 | 默认值 |
| total | number | 总记录数,该属性在创建分页的时候是必须设置的 | 1 |
| pageSize | number | 每页显示的记录数 | 10 |
| pageNumber | number | 当分页创建完成时显示当前的页码 | 1 |
| pageList | array |
用户可以灵活的改变每页显示的记录数。可选 项存在数组中示比例如以下: $.('#pager').pagination(
|
|
| loading | boolean | 定义数据是否正在加载(提醒) | false |
| buttons | array,selector |
自己定义button,两个值。 1、一个array数组,每一个button包括两个属性 iconCls:显示背景图片的css类 handler:当button被点击时调用的一个句柄函数 2、selector指示该buttons 一个简单的样例: 1、使用html标记来创建: <div class="easyui-pagination" style="border:1px solid #ccc" data-options=" total: 114, 2、使用js脚本创建: <div class="easyui-pagination" style="border:1px solid #ccc" id="pager"> |
null |
| layout | array |
定义pagination的布局,開始于版本号 1.3.5 布局选项可能包括例如以下的值: list:页面大小集合 sep:button指间的分隔符 first:第一个button prev:前一个button next:后一个button last:最后一个button refresh:刷新button manual:手动页数的输入,同意进入的页码 links:页面数字的链接. 简单演示样例代码: <script> |
|
| links | number | 链接的数量,当links被定义在layout属性中的时候该设置才有效。開始于1.3.5 | 10 |
| showPageList | boolean | 定义是否显示可选择的每页记录数。 | true |
| showRefresh | boolean | 定义是否显示刷新button。 | true |
| beforePageText | string | 在输入框之间显示的符号 | Page |
| afterPageText | string | 在输入框之后显示的符号 | of{pages} |
| dispalyMsg | string | 在插件右上方显分页信息 | Displaying {from} to {to} of {total} items |
是吧,pagination属性挺多、挺繁琐的呢。只是不必在意正是由于这样我们才干灵活的对事实上现定制化。须要说明的是最后3个属性通常是不会动的。local里面的语言js就已经定义好了。
事件
| 名称 | 属性 | 描写叙述信息 |
| onSelectPage | pageNumber,pageSize |
当用户进行翻页的时候触发,回调函数包括2个參数: pageNumber:下一页页码 pageSize:下一页显示记录数 演示样例:
|
| onBeforeRefresh | pageNumber,pageSize | 刷新之前触发,返回false将取消刷新。 |
| onRefresh | pageNumber,pageSize | 刷新之后触发。 |
| onChangePageSize | pageSize | 当用户改动每页记录数时触发。 |
方法
| 名称 | 參数 | 描写叙述信息 |
| options | none | 返回分页属性对象 |
| loading | none | 提醒分页插件正在下载 |
| loaded | none | 提醒分页插件已经下载 |
| refresh | options |
刷新并显示信息。1.3可用。 $('#pp').pagination('refresh'); // 刷新页面右栏的信息
|
| select | page |
选择一个新页面。页面索引从1開始。1.3可用。 $('#pp').pagination('select'); // refresh the current page
|
使用方式
1、创建分页标记:
<div id="pp" class="easyui-pagination" data-options="total:2000,pageSize:10" style="background:#efefef;border:1px solid #ccc;">
</div>
2、使用脚本创建:
<div id="pp" style="background:#efefef;border:1px solid #ccc;"></div>
<div id="pp" style="background:#efefef;border:1px solid #ccc;"></div>
$('#pp').pagination({
total:2000,
pageSize:10
});
Demo
官网提供的pagination演示样例是一些定制,这里我就不再多提了,读者能够依据上面表格中的一些熟悉、方法自己去灵活的定制。这里我认为比較有意思的demo还是api中的。
通过面板和pagination来使用ajax分页。当用户选择一个新页面,面板将显示指定页面的对应内容。代码例如以下:
<div id="content" class="easyui-panel" style="height:200px" data-options="href:'show_content.php?page=1'">
</div>
<div class="easyui-pagination" style="border:1px solid #ccc;" data-options="
total: 2000,
pageSize: 10, onSelectPage: function(pageNumber, pageSize){
$('#content').panel('refresh', 'show_content.php?page='+pageNumber);依据选择的pageNumber刷新panel里面的页面内容
}">
</div>
好了,基于pagination的学习先就到这了,兴许用到的地方目測会很的多的呢。
EasyUI基础入门之Pagination(分页)的更多相关文章
- EasyUI基础入门之Parser(解析器)
前言 JQuery EasyUI提供的组件包含功能强大的DataGrid,TreeGrid.面板.下拉组合等.用户能够组合使用这些组件,也能够单独使用当中一个.(使用的形式是以插件的方式提供的) Ea ...
- EasyUI基础入门之Easyloader(载入器)
在了解完easyui的parser(解析器)之后,接下来就是easyloader(简单载入器)的学习了. 什么是EasyLoader 正如其名字一样easyloader的作用是为了动态的载入组件所需的 ...
- EasyUI基础入门之Resiable(可缩放)
easyui的base插件学习已经进行到Resizable(可缩放)了.照旧看看easyui官网的API. Resiable 正如其字面意思一样(可伸缩),resiable主要是将一些html元素扩展 ...
- easyUI基础入门
头部需要引人文件:<!DOCTYPE html><html><head> <meta charset="utf-8"> <ti ...
- EasyUI基础入门之Droppable(可投掷)
怎么说呢Droppable这个单词究竟是什么意思,准确来说easyui作者究竟要表达什么意思,还是不大好拿捏的.只是没关系,没有必要纠结与这些细枝末节的东西,依据官网的demo效果,就简单的将之定义为 ...
- [转载]EasyUI Pagination 分页的两种做法
EasyUI 的 datagrid 支持服务器端分页,但是官方的资料比较少,以下总结了两种 datagrid 的服务器端分页机制,可根据情况具体使用. 一:使用 datagrid 默认机制 后台: p ...
- EasyUI Pagination 分页的两种做法
EasyUI 的 datagrid 支持服务器端分页,但是官方的资料比较少,以下总结了两种 datagrid 的服务器端分页机制,可根据情况具体使用. 一:使用 datagrid 默认机制 后台: p ...
- 第二百零九节,jQuery EasyUI,Pagination(分页)组件
jQuery EasyUI,Pagination(分页)组件 学习要点: 1.加载方式 2.属性列表 3.事件列表 4.方法列表 本节课重点了解 EasyUI 中 Pagination(分页)组件的使 ...
- 手把手教你使用Vue/React/Angular三大框架开发Pagination分页组件
DevUI是一支兼具设计视角和工程视角的团队,服务于华为云DevCloud平台和华为内部数个中后台系统,服务于设计师和前端工程师.官方网站:devui.designNg组件库:ng-devui(欢迎S ...
随机推荐
- 关于微信聊天与朋友圈如何快速切换 Mark
用微信时,你是否遇到这样的情况.你正刷着朋友圈,享受着各种鸡汤,这时候,你收到一条微信,一看是女王大人,不得不回.你诚恳的回了一条,等了二十秒不见有什么回应,于是就退了出来,进入朋友圈找到那篇没看完的 ...
- IE 兼容性写法
1. 条件注释语句 <!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]--> <!--[if IE]> 所有的IE ...
- 【转】17种常用的JS正则表达式 非负浮点数 非负正数.
<input type='text' id='SYS_PAGE_JumpPage' name='SYS_PAGE_JumpPage' size='3' maxlength='5' onkeyup ...
- 第三百四十九、五十天 how can I 坚持
昨天是忘写博客了,今天下班才突然意思到,搞框架搞了好晚.今天重新下了个好了. 昨天,把存储过程交给同事写了,啥都不会,又一堆问题,折腾了一天. 今天相对轻松些,不过事情还没完..明天又周五了. 还有昨 ...
- 【转】Hibernate利用@DynamicInsert和@DynamicUpdate生成动态SQL语句
原文链接:http://www.cnblogs.com/quanyongan/p/3152290.html 最近在使用Hibernate4中,发现两个很有奥秘的注解 @DynamicInsert 和 ...
- 【转】jsp页面中jstl标签详解
原文地址: JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实 ...
- TransactionScope事务对多个数据库的操作
.Net 2.0引入了轻量级事务管理器(Lighweight Transaction Manager),即System.Transactions.TransactionManager. 轻量级事务管理 ...
- 主题敏感词PageRank
[主题敏感词PageRank] PageRank忽略了主题相关性,导致结果的相关性和主题性降低,对于不同的用户,甚至有很大的差别.例如,当搜索“苹果”时,一个数码爱好者可能是想要看 iphone 的信 ...
- emWin(ucGui) MULTIEDIT控件的按键响应处理 worldsing
目前没有读过ucgui的源代码,通过应用代码测试出在FRAMEWIN的控件焦点顺序是样的: 按资源列表里创建的控件,默认将焦点落在第一个可接收焦点的控件,目前知道不可接收 焦点的控件有TEXT,在FR ...
- C++中使用接口
面向对象的语言诸如JAVA提供了Interface来实现接口,但C++却没有这样一个东西,尽管C++ 通过纯虚基类实现接口,譬如COM的C++实现就是通过纯虚基类实现的(当然MFC的COM实现用了嵌套 ...