前言

对于一些企业级的应用来说(非站点),页面上最为基本的内容也就是表格和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(
{pageList:[10,20,30]
});
 
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,buttons: [{iconCls:'icon-add',handler:function(){alert('add')}},'-',{iconCls:'icon-save',handler:function(){alert('save')}
}]">
</div>

2、使用js脚本创建:

<div class="easyui-pagination" style="border:1px solid #ccc" id="pager">
</div>
<script>$('#pager').pagination({total: 11,buttons: [{
iconCls: 'icon-add',
handler: function () {
alert('add')
}}, '-', {
iconCls: 'icon-save',
handler: function () {
alert('save')
}
}]});
</script>
null
layout array

定义pagination的布局,開始于版本号    1.3.5

布局选项可能包括例如以下的值:

list:页面大小集合

sep:button指间的分隔符

first:第一个button

prev:前一个button

next:后一个button

last:最后一个button

refresh:刷新button

manual:手动页数的输入,同意进入的页码

links:页面数字的链接.

简单演示样例代码:

<script>
$('#pager').pagination({
total: 11,
buttons: [{
iconCls: 'icon-add',
handler: function () {
alert('add')
}}, '-', {
iconCls: 'icon-save',
handler: function () {
alert('save')
}}],
layout:['list','sep',first','links','last']
});
</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:下一页显示记录数

演示样例:

$('#pp').pagination({
onSelectPage:function(pageNumber, pageSize){
$(this).pagination('loading');
alert('pageNumber:'+pageNumber+',pageSize:'+pageSize);
$(this).pagination('loaded');
}
});
onBeforeRefresh pageNumber,pageSize 刷新之前触发,返回false将取消刷新。
onRefresh pageNumber,pageSize 刷新之后触发。
onChangePageSize pageSize 当用户改动每页记录数时触发。

方法

名称 參数 描写叙述信息
options none 返回分页属性对象                        
loading none 提醒分页插件正在下载
loaded none 提醒分页插件已经下载
refresh options

刷新并显示信息。1.3可用。

$('#pp').pagination('refresh');    // 刷新页面右栏的信息
$('#pp').pagination('refresh',{ // 改变选项并刷新页面右栏的信息total: 114,pageNumber: 6
});
select page

选择一个新页面。页面索引从1開始。1.3可用。

$('#pp').pagination('select'); // refresh the current page
$('#pp').pagination('select', 2);   // select the second 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的学习先就到这了,兴许用到的地方目測会很的多的呢。

独立网站:liangtao.sinaapp.com/?p=209

EasyUI基础入门之Pagination(分页)相关推荐

  1. EasyUI基础入门之Droppable(可投掷)

    怎么说呢Droppable这个单词究竟是什么意思,准确来说easyui作者究竟要表达什么意思,还是不大好拿捏的.只是没关系,没有必要纠结与这些细枝末节的东西,依据官网的demo效果,就简单的将之定义为 ...

  2. EasyUI Pagination 分页的两种做法

    EasyUI 的 datagrid 支持服务器端分页,但是官方的资料比较少,以下总结了两种 datagrid 的服务器端分页机制,可根据情况具体使用. 一:使用 datagrid 默认机制 后台: p ...

  3. elementui的tree组件页面显示不出数据_[Angular 组件库NG-ZORRO基础入门] -Hacker News: Pagination...

    前言回顾 到目前为止,我们已经实现了 hacker news 大部分页面功能设计,但是仍然缺少一个重要的翻页功能,API 现在没人是返回 20 条数据,我们今天会使用 Pagination 组件 将分 ...

  4. elementUi基础入门学习

    elementUi基础入门学习 1.前后端分离(理解) 1.1什么是前后端分离 1.2 前后端分离开发的理解 1.3 为什么要进行前端分离开发: 2 . 先去搭建前端服务 3 elementui 4 ...

  5. 2022年最新最全的Java零基础入门,零基础入门springboot,MySQL的学习

    今天就来开始带领大家零基础入门Java开发 写在前面 为什么学习Java Java用途很广泛,如下图所示,Java可以做很多工作 JAVA语言发展史 2019年3月,JDK12版本发布. 2019年9 ...

  6. EasyUI之简单实现Datagrid分页(C#)

    EasyUI之简单实现Datagrid分页(C#) 刚刚开始学着用EasyUI,有兴趣的TX可以去http://www.jeasyui.com/看一下,当然很多人都知道,不是什么新鲜的东西: 这两天在 ...

  7. java进阶 2018_Java Web基础入门2018版

    步骤1: Java Web基础入门 本步骤带领大家进入Java Web的世界,除了介绍JSP和Servlet以外,还会介绍开发工具IntelliJ IDEA的使用,以及什么是XML.最后会学习MVC模 ...

  8. 视频教程-5小时零基础入门小程序云开发-微信开发

    5小时零基础入门小程序云开发 码农一枚,非著名全栈开发人员.分享自己的一些经验,学习心得,希望后来人少走弯路,少填坑. 多年全栈开发经验,擅长小程序,java,安卓,web前端开发. 邱石 ¥29.0 ...

  9. Vue3 element-ui实现Pagination分页组件--封装分页

    什么是Pagination分页组件? 在 B 端的 web 开发中,分页组件或者叫分页器,是较为常用的控件之一,通常配合表格或列表,实现数据量大的情况下,分页拆解数据的功能. 1.scrollTo和滚 ...

最新文章

  1. 智源论坛 | 智能处理器探索(3月21日)
  2. python read函数_Python read()函数:读入指定长度的文本
  3. cmakelists语法_CMakeList语法知识
  4. “约见”面试官系列之常见面试题之第五十三篇之网站的资源优化(建议收藏)
  5. mysql 10天以前_MySQL前10天7天前
  6. Android权威编程指南读书笔记(1-2章)
  7. C语言实验—— 数值统计
  8. win7升级win10失败开不了机
  9. [转] 张凌 ARM体系架构
  10. android 联系人 字母索引,Android手机联系人带字母索引的快速查找
  11. LNK1181 无法打开输入文件“winmm.lib”
  12. 《Investigating Typed Syntactic Dependencies for TSC Using GAT》论文笔记
  13. 原生JS快速实现拖放(drag and drop)效果
  14. python中的sheet,Python中的Smartsheet库:模块'smartsheet.sheets'没有属性'sheets'
  15. 【有奖众测】快服务开发者俱乐部第一期来咯!
  16. 博途v15模拟量转换_通过实例玩转博途之信号模块参数设置及模拟量输入转换举例...
  17. -1-2 java 面向对象基本概念 封装继承多态 变量 this super static 静态变量 匿名对象 值传递 初始化过程 代码块 final关键字 抽象类 接口
  18. 京东文件存储服务器,紫晶存储智能家庭云服务器登录中国移动和彩云,首个京东官方旗舰店助力消费者业务...
  19. sql怎么撤回update_【干货】SQL基础快速入门
  20. 武汉科技大学数学计算机考试范围,2018年考研数学三考试大纲

热门文章

  1. mysql c测试程序_MySQL · 最佳实践 · 一个TPC-C测试工具sqlbench使用-阿里云开发者社区...
  2. 基于vue + element 的后台管理系统
  3. UVALive - 6440
  4. Python使用装饰器捕获异常
  5. 某学校新买了一批计算机,2020年度初中信息技术考试选择题.doc
  6. signature=efaf25d07c6ea03d7552906c0caee5a8,幼児の認知発達における関係把握の問題
  7. 根据前一个元素的check状态决定其他元素disable
  8. mysql ----DML(掌握)
  9. codeigniter index.php,CodeIgniter如何隐藏index.php | 学步园
  10. virsh链接虚拟机_KVM 通过virsh console连入虚拟机