bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
新项目,准备引用bootstrap-table这个控件来展示页面上的表格,无奈这款控件的分页工具栏没有跳转到xx页的功能,为了适应公司美工(只会出图的美工,却跟我要求这要求那)的蛋疼需求,硬着头皮改了一下bootstrap-table的源码,实现了此功能。
注:由于本人js水平停留在dom级,此次扩展只支持页面上的单表格,也就是说如果同一个页面引用两次bootstrap-table的话,该跳转将无效。
各路神仙如果有更完美的解决方案,也请留言告诉我一声,让我也学习一下。
关于如何引用控件什么的就不说了,网上百度一下说的都比我好,下面直接上源码。
1、下载bootstrap-table.js的源码(注意不要下载min的,我下载的版本是:version: 1.11.0),在源码中以 '<ul class="pagination' 为关键字进行检索,定位到以下代码
html.push('</div>', '<div class="pull-' + this.options.paginationHAlign + ' pagination">', '<ul class="pagination' + sprintf(' pagination-%s', this.options.iconSize) + '">', '<li class="page-pre"><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" >' + this.options.paginationPreText + '</a></li>');
ok,把上面这段代码覆盖成下面的代码
html.push('</div>', '<div class="goPage"><input type="button" value="跳转" class="pageBtn" onclick="toPage();"></div>', '<div class="goPage">跳转到第<input id="pageNum" class="pageNum" type="text">页</div>', '<div class="pull-' + this.options.paginationHAlign + ' pagination">', '<ul class="pagination' + sprintf(' pagination-%s', this.options.iconSize) + '">', '<li class="page-pre"><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" >' + this.options.paginationPreText + '</a></li>');
到这,源码就修改完了。
2、然后,在全局css文件里添加以下class
.pageBtn { } .pageNum { width: 40px; border-radius: 3px; } .goPage { float: right; margin-left: 5px; margin-top: 13px; height: 30px; }
如果需要自定义按钮的样式,可以在pgeBtn里面自己定义
3、在js文件里添加跳转方法
function toPage() { var pageNum = $("#pageNum").val(); if (pageNum) { $('#table').bootstrapTable('selectPage', parseInt(pageNum)); } }
注意,我的表格id定义为table,需要将$('#table').bootstrapTable
换成你自己定义的id
以上,就可以实现输入页码进行跳转了。效果图如下:
相关推荐
时光如瑾雨微凉 2020-03-04
amberom 2020-01-06
luadenis0 2019-08-30
Lius 2019-06-19
zhanggang 2018-10-23
82473264 2015-05-12
zh000 2015-07-22
人心 2019-06-27
OpsDevOps 2019-06-25
88304694 2019-06-25
SeekerTime 2019-06-21
yyzhu 2012-03-18
DHCliaozheng 2017-03-12
程序员哦 2016-12-23
Chinahdy 2016-12-23
gigizhui 2016-12-17
Wmeng0 2018-01-26
genglang 2016-06-03