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 相关文章推荐
一个JS函数搞定网页标题(title)闪动效果
May 13 Javascript
JavaScript中实现Map的示例代码
Sep 09 Javascript
iScroll.js 使用方法参考
May 16 Javascript
js给table赋值的实例代码
Oct 13 Javascript
HTML Table 空白单元格补全的简单实现
Oct 13 Javascript
详解Vue中使用v-for语句抛出错误的解决方案
May 04 Javascript
js上传图片预览的实现方法
May 09 Javascript
jQuery常用选择器详解
Jul 17 jQuery
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
Sep 29 Javascript
小程序实现多列选择器
Feb 15 Javascript
vue和better-scroll实现列表左右联动效果详解
Apr 29 Javascript
原生JS实现贪吃蛇小游戏
Mar 09 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中创建空文件的代码[file_put_contents vs touch]
2012/01/20 PHP
PHP中使用TCPDF生成PDF文档实例
2014/07/01 PHP
php 输入输出流详解及示例代码
2016/08/25 PHP
PHP实现的服务器一致性hash分布算法示例
2018/08/09 PHP
PHP registerXPathNamespace()函数讲解
2019/02/03 PHP
php创建类并调用的实例方法
2019/09/25 PHP
PHP开发api接口安全验证操作实例详解
2020/03/26 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
js 绑定带参数的事件以及手动触发事件
2010/04/27 Javascript
js 优化次数过多的循环 考虑到性能问题
2011/03/05 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
2015/03/23 Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
2016/06/16 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
关于JSON与JSONP简单总结
2016/08/16 Javascript
详解Vue2.5+迁移至Typescript指南
2019/08/01 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
vue实现浏览器全屏展示功能
2019/11/27 Javascript
jquery实现简单拖拽效果
2020/07/20 jQuery
python数组复制拷贝的实现方法
2015/06/09 Python
Python图片裁剪实例代码(如头像裁剪)
2017/06/21 Python
简单了解Django模板的使用
2017/12/20 Python
python基于物品协同过滤算法实现代码
2018/05/31 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
python实现的读取网页并分词功能示例
2019/10/29 Python
移动Web—CSS为Retina屏幕替换更高质量的图片
2012/12/24 HTML / CSS
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
C语言变量的命名规则都有哪些
2013/12/27 面试题
浙大网新C/C++面试解惑
2015/05/27 面试题
新郎父亲婚宴答谢词
2014/01/11 职场文书
文明礼貌演讲稿
2014/05/12 职场文书
班级活动总结格式
2014/08/30 职场文书
热血教师观后感
2015/06/10 职场文书
考研经验交流会策划书
2015/11/02 职场文书
Mysql数据库中datetime、bigint、timestamp来表示时间选择,谁来存储时间效率最高
2021/08/23 MySQL