本文实例讲述了仿dede下拉分页样式修改的thinkphp分页类。分享给大家供大家参考。具体实现方法如下:
修改thinkphp分页类:如下拉列表式分页(类似dedecms分页):
纯html代码:
复制代码 代码如下:
修改Page类操作:
Page.class.php页面,相关部分原代码:
复制代码 代码如下:
$linkPage="";
for($i=1;$irollPage;$i++){
$page=($nowCoolPage-1)*$this->rollPage+$i;
if($page!=$this->nowPage){
if($pagetotalPages){
$linkPage .= " ".$page." ";
}else{
break;
}
}else{
if($this->totalPages != 1){
$linkPage .= " ".$page."";
}
}
}
修改后:
复制代码 代码如下:
$linkPage=" ";
页面效果如下图所示:
希望本文所述对大家的ThinkPHP程序设计有所帮助。
用分页类中的setConfig方法进行自定义分页样式:
我这有个之前用的自定义分页类,你看这改吧。
/** * * Enter 公共分页类 * @param array $map分页过滤的条件 * @param class $Form 数据模型 * @param integer $limit 分页显示的条数 * @param string $order排序 * @return array */ public function _list($map,$Form,$limit=9,$order='add_time'){ $res=array(); $p=empty($_GET['p']) ? 0 : (int)$_GET['p']; $res['list'] = $Form->field(true)->where($map)->order($order)->page($p.','.$limit)->select();import('ORG.Util.Page'); // 导入分页类$count = $Form->where($map)->count();// 查询满足要求的总记录数$Page = new Page($count,$limit);// 实例化分页类 传入总记录数和每页显示的记录数$Page->rollPage=3;$Page->setConfig('theme'," %upPage% %linkPage% %downPage%
你可以多用几个数据多分几个页,然后查看源代码 看看分页代码的css 加个样式表就ok了
div.meneame{padding:3px;font-size:80%;margin:3px;color:#ff6500;text-align:center;}div.meneame a{border:#ff9600 1px solid;padding:5px 7px;background-position:50% bottom;background-image:url(../images/meneame.jpg);margin:0 3px 0 0;text-decoration:none;}div.meneame a:hover{border:#ff9600 1px solid;background-image:none;color:#ff6500;background-color:#ffc794;}div.meneame a:active{border:#ff9600 1px solid;background-image:none;color:#ff6500;background-color:#ffc794;}div.meneame span.current{border:#ff6500 1px solid;padding:5px 7px;font-weight:bold;color:#ff6500;margin:0 3px 0 0;background-color:#ffbe94;}div.meneame span.disabled{border:#ffe3c6 1px solid;padding:5px 7px;color:#ffe3c6;margin:0 3px 0 0;}