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 相关文章推荐
jquery合并表格中相同文本的相邻单元格
Jul 17 Javascript
jQuery插件ImageDrawer.js实现动态绘制图片动画(附源码下载)
Feb 25 Javascript
Node.js + Redis Sorted Set实现任务队列
Sep 19 Javascript
BootStrap Tooltip插件源码解析
Dec 27 Javascript
js实现城市级联菜单的2种方法
Jun 23 Javascript
Javascript别踩白块儿(钢琴块儿)小游戏实现代码
Jul 20 Javascript
AngularJS中控制器函数的定义与使用方法示例
Oct 10 Javascript
JavaScript同源策略和跨域访问实例详解
Apr 03 Javascript
如何解决React官方脚手架不支持Less的问题(小结)
Sep 12 Javascript
详解react内联样式使用webpack将px转rem
Sep 13 Javascript
vue实现页面内容禁止选中功能,仅输入框和文本域可选
Nov 09 Javascript
JavaScript实现多层颜色选项卡嵌套
Sep 21 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
php找出指定范围内回文数且平方根也是回文数的方法
2015/03/23 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
php实现将base64格式图片保存在指定目录的方法
2016/10/13 PHP
php使用GD2绘制几何图形示例
2017/02/15 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
学习YUI.Ext 第三天
2007/03/10 Javascript
js 发个判断字符串是否为符合标准的函数
2009/04/27 Javascript
javascript文本框内输入文字倒计数的方法
2015/02/24 Javascript
JavaScript中的small()方法使用详解
2015/06/08 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
2015/11/25 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
Angularjs结合Bootstrap制作的一个TODO List
2016/08/18 Javascript
Kendo Grid editing 自定义验证报错提示的解决方法
2016/11/18 Javascript
详解jQuery简单的表格应用
2016/12/16 Javascript
nodejs中解决异步嵌套循环和循环嵌套异步的问题
2017/07/12 NodeJs
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
Javascript Worker子线程代码实例
2020/02/20 Javascript
python socket 超时设置 errno 10054
2014/07/01 Python
python下paramiko模块实现ssh连接登录Linux服务器
2015/06/03 Python
Python生成MD5值的两种方法实例分析
2019/04/26 Python
python实现基于朴素贝叶斯的垃圾分类算法
2019/07/09 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
2020/03/24 Python
Django ORM filter() 的运用详解
2020/05/14 Python
Python自动登录QQ的实现示例
2020/08/28 Python
Python+OpenCV图像处理——图像二值化的实现
2020/10/24 Python
Django中日期时间型字段进行年月日时分秒分组统计
2020/11/27 Python
浅析pandas随机排列与随机抽样
2021/01/22 Python
css3 border旋转时的动画应用
2016/01/22 HTML / CSS
佳能加拿大网上商店:Canon eStore Canada
2018/04/04 全球购物
医学生求职自荐信
2013/10/25 职场文书
函授本科自我鉴定
2013/11/03 职场文书
法学函授自我鉴定
2014/02/06 职场文书
写求职信有什么意义
2014/02/17 职场文书
人民教师求职自荐信
2014/03/12 职场文书
学用政策心得体会
2014/09/10 职场文书