Bootstrap php制作动态分页标签


Posted in Javascript onDecember 23, 2016

学习了下bootstrap,刚好在用分页,就自己写了一个分页,然后结合bootstrap样式展现。

bootstrap的分页格式:

<ul class="pagination">
  <li><a href="#">«</a></li>
  <li class="active"><a href="#">1</a></li>
  <li><a href="#">2</a></li>
  <li><a href="#">3</a></li>
  <li><a href="#">4</a></li>
  <li><a href="#">5</a></li>
  <li><a href="#">»</a></li>
</ul>

PHP动态分页过程;

/**
 * @param $maxpage 总页数
 * @param $page  当前页
 * @param string $para 翻页参数(不需要写$page),$para参数就应该设为'&id=1'
 * @return string 返回的输出分页html内容
 */
function multipage($maxpage, $page, $para = '') {
  $multipage = ''; //输出的分页内容
  $listnum = 5;   //同时显示的最多可点击页面

  if ($maxpage < 2) {
    return '';
  }else{
    $offset = 2;
    if ($maxpage <= $listnum) {
      $from = 1;
      $to = $maxpage;
    } else {
      $from = $page - $offset; //起始页
      $to = $from + $listnum - 1; //终止页
      if($from < 1) {
        $to = $page + 1 - $from;
        $from = 1;
        if($to - $from < $listnum) {
          $to = $listnum;
        }
      } elseif($to > $maxpage) {
        $from = $maxpage - $listnum + 1;
        $to = $maxpage;
      }
    }

    $multipage .= ($page - $offset > 1 && $maxpage >= $page ? '<li><a href="?page=1'.$para.'" >1...</a></li>' : '').
      ($page > 1 ? '<li><a href="?page='.($page - 1).$para.'" >«</a></li>' : '');

    for($i = $from; $i <= $to; $i++) {
      $multipage .= $i == $page ? '<li class="active"><a href="?page='.$i.$para.'" >'.$i.'</a></li>' :
   '<li><a href="?page='.$i.$para.'" >'.$i.'</a></li>';
    }

    $multipage .= ($page < $maxpage ? '<li><a href="?page='.($page + 1).$para.'" >»</a></li>' : '').
      ($to < $maxpage ? '<li><a href="?page='.$maxpage.$para.'" class="last" >...'.$maxpage.'</a></li>' : '');
    $multipage .= ' <li><a href="#" ><input type="text" size="3" onkeydown="if(event.keyCode==13) 
    {self.window.location=\'?page=\'+this.value+\''.$para.'\'; return false;}" ></a></li>';


    $multipage = $multipage ? '<ul class="pagination">'.$multipage.'</ul>' : '';
  }

  return $multipage;
}

输出分页结果,如$multipage = multipage(20,1);便可得到如下所示的分页标签了:

Bootstrap php制作动态分页标签

有个不完善的地方就是最后的页码自选择框的大小与bootstrap的分页框大小不一致,有点影响美观了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用UglifyJS合并/压缩JavaScript的方法
Mar 07 Javascript
js使用正则实现ReplaceAll全部替换的方法
Jul 18 Javascript
jQuery.prop() 使用详解
Jul 19 Javascript
js正则表达式中exec用法实例
Jul 23 Javascript
jqGrid用法汇总(全经典)
Jun 28 Javascript
js方法数据验证的简单实例
Sep 17 Javascript
JavaScript 判断一个对象{}是否为空对象的简单方法
Oct 09 Javascript
javascript入门之window对象【新手必看】
Nov 22 Javascript
angularjs中ng-attr的用法详解
Dec 31 Javascript
Javascript前端经典的面试题及答案
Mar 14 Javascript
Angular 4依赖注入学习教程之ClassProvider的使用(三)
Jun 04 Javascript
VueX模块的具体使用(小白教程)
Jun 05 Javascript
前端JS面试中常见的算法问题总结
Dec 23 #Javascript
Bootstrap源码解读导航条(7)
Dec 23 #Javascript
livereload工具实现前端可视化开发【推荐】
Dec 23 #Javascript
浅谈jQuery操作类数组的工具方法
Dec 23 #Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
Dec 23 #Javascript
详解jQuery中的DOM操作
Dec 23 #Javascript
Bootstrap table两种分页示例
Dec 23 #Javascript
You might like
图解上海144收音机
2021/03/02 无线电
php生成随机颜色方法汇总
2014/12/03 PHP
PHP模拟asp.net的StringBuilder类实现方法
2015/08/08 PHP
WIFI万能钥匙密码查询接口实例
2015/09/28 PHP
php实现遍历多维数组的方法
2015/11/25 PHP
老生常谈PHP位运算的用途
2017/03/12 PHP
jquery 元素控制(追加元素/追加内容)介绍及应用
2013/04/21 Javascript
jQuery实现鼠标滚轮动态改变样式或效果
2015/01/05 Javascript
使用js画图之饼图
2015/01/12 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
jQuery实现查找最近父节点的方法
2016/06/23 Javascript
JS基于递归实现倒计时效果的方法
2016/11/26 Javascript
bootstrap轮播图示例代码分享
2017/05/17 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
vuex中的 mapState,mapGetters,mapActions,mapMutations 的使用
2018/04/13 Javascript
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
IntelliJ IDEA编辑器配置vue高亮显示
2019/09/26 Javascript
微信小程序wxs实现吸顶效果
2020/01/08 Javascript
使用Webpack 搭建 Vue3 开发环境过程详解
2020/07/28 Javascript
vue中如何自定义右键菜单详解
2020/12/08 Vue.js
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
2015/04/25 Python
Python自动扫雷实现方法
2015/07/25 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
python列表推导式入门学习解析
2019/12/02 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
python datetime处理时间小结
2020/04/16 Python
Django实现文章详情页面跳转代码实例
2020/09/16 Python
南威尔士家居商店:Leekes
2016/10/25 全球购物
Ted Baker美国官网:英国时尚品牌
2018/10/29 全球购物
函数只定义了一次, 调用了一次, 但编译器提示非法重定义了-什么问题?
2014/10/03 面试题
法人委托书范本格式
2014/09/15 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
教师继续教育反思周记
2015/06/25 职场文书
军训新闻稿范文
2015/07/17 职场文书