本文實例講述了仿dede下拉分頁樣式修改的thinkphp分頁類。分享給大家供大家參考。具體實現方法如下:
修改thinkphp分頁類:如下拉列表式分頁(類似dedecms分頁):
純html代碼:
復制代碼 代碼如下:<select name="sldd" onchange="location.href=this.options[this.selectedIndex].value;">
<option value="http://URL/1">1</option>
<option value="http://URL/2" selected="selected">2</option>
</select>
修改Page類操作:
Page.class.php頁面,相關部分原代碼:
復制代碼 代碼如下:$linkPage="";
for($i=1;$i<=$this->rollPage;$i++){
$page=($nowCoolPage-1)*$this->rollPage+$i;
if($page!=$this->nowPage){
if($page<=$this->totalPages){
$linkPage .= " <a href='".$url."&".$p."=$page'> ".$page." </a>";
}else{
break;
}
}else{
if($this->totalPages != 1){
$linkPage .= " <span class='current'>".$page."</span>";
}
}
}
修改後:
復制代碼 代碼如下:$linkPage=" <select name='sldd' style='width:36px' onchange='location.href=this.options[this.selectedIndex].value;'>";
for($i=1;$i<=$this->rollPage;$i++){
$page=($nowCoolPage-1)*$this->rollPage+$i;
if($page!=$this->nowPage){
if($page<=$this->totalPages){
$linkPage .= "<option value='".$url."&".$p."=$page'>".$page."</option>";
}else{
break;
}
}else{
if($this->totalPages != 1){
$linkPage .= "<option value='".$url."' selected='selected'>".$page."</option>";
}
}
}
$linkPage.="</select>";
頁面效果如下圖所示:
希望本文所述對大家的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% <li style='width:50px;'><a href='javascript:void(0)'>%nowPage%/%totalPage% 頁</a></li>");$res['page'] = $Page->show();// 分頁顯示輸出return $res; }
你可以多用幾個數據多分幾個頁,然後查看源代碼 看看分頁代碼的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;}