bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能

https://www.cnblogs.com/floud/archive/2017/12/28/8135605.html

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)">' + this.options.paginationPreText + '</a></li>');

ok,把上面这段代码覆盖成下面的代码

复制代码

            html.push('</div>',
                '<div class="goPage"><input type="button" value="跳转" class="pageBtn" οnclick="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)">' + this.options.paginationPreText + '</a></li>');

复制代码

扫描二维码关注公众号,回复: 9793223 查看本文章

到这,源码就修改完了。

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

以上,就可以实现输入页码进行跳转了。效果图如下:

发布了54 篇原创文章 · 获赞 8 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/yang295242361/article/details/90719375