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 相关文章推荐
11款新鲜的jQuery插件[附所有demo下载]
Jan 24 Javascript
JavaScript 用cloneNode方法克隆节点的代码
Oct 15 Javascript
Jquery增加鼠标中间功能mousewheel的实例代码
Sep 05 Javascript
Node.js开发指南中的简单实例(mysql版)
Sep 17 Javascript
JavaScript实现LI列表数据绑定的方法
Aug 04 Javascript
详解AngularJS中自定义过滤器
Dec 28 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
Jan 17 Javascript
vue系列之requireJs中引入vue-router的方法
Jul 18 Javascript
利用hasOwnProperty给数组去重的面试题分享
Nov 05 Javascript
在Layui 的表格模板中,实现layer父页面和子页面传值交互的方法
Sep 10 Javascript
jquery实现拖拽小方块效果
Dec 10 jQuery
JavaScript 声明私有变量的两种方式
Feb 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
基于PHP的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
解析PHP中ob_start()函数的用法
2013/06/24 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
JavaScript 组件之旅(一)分析和设计
2009/10/28 Javascript
jQuery AjaxQueue改进步骤
2011/10/06 Javascript
javascript如何实现暂停功能
2015/11/06 Javascript
Angular.js 实现数字转换汉字实例代码
2016/07/14 Javascript
Angularjs在初始化未完毕时出现闪烁问题的解决方法分析
2016/08/05 Javascript
轻松实现js弹框显示选项
2016/09/13 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
2017/10/15 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
vue中的循环对象属性和属性值用法
2020/09/04 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
python文件和目录操作方法大全(含实例)
2014/03/12 Python
Python批量转换文件编码格式
2015/05/17 Python
python实现图片处理和特征提取详解
2017/11/13 Python
Python实现Kmeans聚类算法
2020/06/10 Python
Python socket套接字实现C/S模式远程命令执行功能案例
2018/07/06 Python
浅谈Python接口对json串的处理方法
2018/12/19 Python
python如何以表格形式打印输出的方法示例
2019/06/21 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
Python vtk读取并显示dicom文件示例
2020/01/13 Python
python super用法及原理详解
2020/01/20 Python
python中upper是做什么用的
2020/07/20 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
Kidsroom台湾:来自德国的婴儿用品
2017/12/11 全球购物
医疗器械售后服务承诺书
2014/05/21 职场文书
2014年除四害工作总结
2014/12/06 职场文书
2015年中秋节演讲稿
2015/03/20 职场文书
公司员工违纪检讨书
2015/05/05 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers