ThinkPHP 整合bootstrap分頁

本經驗為Thinkphp分頁樣式修改,整合bootstrap,當然,理解了方法後,想怎麼改都行,第一次發經驗,言不達意,錯誤及不足之處,希望得到建議,如果有疑問可私信

工具/原料

ThinkPHP 3.2
bootstrap 3

方法/步驟

首頁預覽一下效果,如圖!

編輯Thinkphp/library/page.class.php文件,在分頁的的html標籤明,外包一個li元素,如

//上一頁

$up_row  = $this->nowPage - 1;

$up_page = $up_row > 0 ? '<a class="prev" aria-label="Previous" href="' . $this->url($up_row) . '">' . $this->config['prev'] . '</a>' : '';

修改為

$up_row  = $this->nowPage - 1;

$up_page = $up_row > 0 ? '<li><a class="prev" aria-label="Previous" href="' . $this->url($up_row) . '">' . $this->config['prev'] . '</a></li>' : '';

//下一頁

$down_row  = $this->nowPage + 1;

$down_page = ($down_row <= $this->totalPages) ? '<li><a class="next" aria-label="Next" href="' . $this->url($down_row) . '">' . $this->config['next'] . '</a></li>' : '';

//第一頁

$the_first = '';

if($this->totalPages > $this->rollPage && ($this->nowPage - $now_cool_page) >= 1){

$the_first = '<li><a class="first" href="' . $this->url(1) . '">' . $this->config['first'] . '</a></li>';

}

//最後一頁

$the_end = '';

if($this->totalPages > $this->rollPage && ($this->nowPage + $now_cool_page) < $this->totalPages){

$the_end = '<li><a class="end" href="' . $this->url($this->totalPages) . '">' . $this->config['last'] . '</a></li>';

}

//中間連接頁

$link_page .= '<li><a class="num" href="' . $this->url($page) . '">' . $page . '</a></li>';

//當前面頁

$link_page .= '<li class="active"><span class="current">' . $page . '</span></li>';

//最後修改return,去掉div標籤,變成

return "{$page_str}";

為了page.class.php能適應更多的樣式,所以page.class.php裡面的html標籤只外套一個li元素,當你不想用bootstrap,page.class.php文件不用再更改

$User = M('xxxxxxx'); // 實例化User對象

$count= $User->count();// 查詢滿足要求的總記錄數

$Page = new \Think\Page($count,25);// 實例化分頁類 傳入總記錄數和每頁顯示的記錄數(25)

//$Page->setConfig()設置樣式

$Page->setConfig('prev',  '<span aria-hidden="true">上一頁</span>');//上一頁

$Page->setConfig('next',  '<span aria-hidden="true">下一頁</span>');//下一頁

$Page->setConfig('first', '<span aria-hidden="true">首頁</span>');//第一頁

$Page->setConfig('last',  '<span aria-hidden="true">尾頁</span>');//最後一頁

//$Page->setConfig('theme','');設置你想顯示的按鈕,%XXXX%含義參照圖示

$Page->setConfig ( 'theme', '<li><a>當前%NOW_PAGE%/%TOTAL_PAGE%</a></li>  %FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%' );

$show       = $Page->show();// 分頁顯示輸出// 進行分頁數據查詢 注意limit方法的參數要使用Page類的屬性

$list = $User->where('pid>0')->order('id')->limit($Page->firstRow.','.$Page->listRows)->select();

// print_r($list);

$this->assign('list',$list);// 賦值數據集

$this->assign('page',$show);// 賦值分頁輸出

$this->display(); // 輸出模板

最後,是在模板調用分頁,

模板引入bootstrap.min.css

{$page}表示引用分頁,把 {$page}放到<ul class="pagination"></ul>內

<ul class="pagination">

{$page}

</ul>

注意事項

public $lastSuffix = false; // 最後一頁是否顯示總頁數

相關文章

  1. ThinkPHP 整合 EasyUI DataGrid 新手教程

    整理ThinkPHP 整合 EasyUI DataGrid ,因為我是新手,在網上找了很多資料,都不是很詳細,特別最重要的一點沒有沒有掉出來,照網上的教程寫了還是沒有有數據源.原因是因為ThinkPH ...
  2. thinkphp搜尋加分頁效果的快速實現

    從Ruby on rails 到 Fuelphp 再到國內的Thinkphp框架的學習,國內很多中小型公司還是很熱衷於Thinkphp框架的,Thinkphp的代碼質量和國外的有名氣的框架的還真沒有辦 ...
  3. 怎麼學習Bootstrap:[8]bootstrap分頁實現

    任何一個網頁裡面, 我們都可以看到分頁, 不管是移動端, 還是pc端, 不管是下拉到下一頁, 還是按鈕下一頁, 都需要分頁支撐你的網站. 這樣首先, 可以提高你的網站的訪問效率. 另外頁面展現也更加好 ...
  4. thinkPHP整合百度雲推送 伺服器篇

    什麼是雲推送? 百度雲推送(Push)是一站式APP信息推送平台,為企業和開發者提供免費的消息推送服務,開發者可以通過雲推送向用戶精準推送通知和自定義消息以提升用戶留存率和活躍度. 方法/步驟 百度搜 ...
  5. thinkphp自帶分頁文件修改

    thinkphp的分頁怎麼修改裡面的內容 工具/原料 電腦 方法/步驟 找到文件位置 主要輸出內容 設置分頁參數名稱 上一頁輸出的內容 下一頁輸出 第一也和最後一頁,自己修改輸出 注意事項 可以換成自 ...
  6. ThinkPHP 整合UCenter教程(ThinkCMF)

    下載ThinkCMF V1.1.1,並完成安裝 登陸你的uc_server後台,創建你的應用 我們以ThinkCMF網站為例: 配置好以上信息,提交後,應用的 UCenter 配置信息會自動生成: 復 ...
  7. 如何給bootstrap分頁添加點擊事件請求json數據

    bootstrap分頁添加點擊事件請求json數據 工具/原料 bootstrap json bootstrap分頁 方法/步驟 給當前頁添加活動樣式. $.each(result.extend.pa ...
  8. bootstrap分頁組件如何使用以及屬性配置

    在開發網頁的過程中,經常會遇到分頁展示數據,自己使用js+css來實現,需要耗費一定的時間,需要自己畫按鈕,樣式控制,下面介紹下如何使用bootstrap快速的完成分頁的顯示 工具/原料 jquery ...
  9. springmvc使用json數據傳遞到bootstrap分頁數據

    springmvc使用json數據傳遞到bootstrap分頁數據 工具/原料 bootstrap springmvc 方法/步驟 伺服器將查出的數據,以json字符串的形式返回給瀏覽器 瀏覽器收到j ...
  10. angularjs和bootstrap整合入門(一)

    以前只是聽過angularjs和bootstrap,最近做了一個入門的教程,供大家參考! 工具/原料 bootstrap angularjs 方法/步驟 添加bootstrap和angularjs.j ...
  11. thinkphp寫個人博客之thinkphp3.2分頁路由

    我是看後盾thinkphp視頻教程學的thinkphp,所以當時也就選擇了3.1版本的,在3.1裡面分頁的格式可以自定義,可以很方便的進行路由,但是到了3.2版本就沒有這個了,百度了一下,發現很多人都 ...
  12. thinkphp 3.1.3 分頁類的分頁樣式的定製和美化

    thinkphp 自帶的分頁類樣式,有時不能滿足項目的要求,這裡主要介紹一下,分頁類樣式的定製和美化,使其更簡潔.美觀 方法/步驟 新建一個thinkphp項目tp,入口文件如下: 在資料庫think ...
  13. ThinkPHP實現多搜尋+分頁功能

    多搜尋+分頁功能模塊:如何組合多個搜尋條件?如何設置分頁參數?如何傳遞搜尋條件?如何傳遞分頁參數? 工具/原料 電腦 ThinkPHP框架 方法/步驟 前言:查詢條件的幾種發送方式: (1)超連結的形 ...
  14. thinkphp 3.1.3 獲取頁數p的分頁類的實例

    區別於上一篇的分頁類,本篇是根據獲取當前分頁數p,通過page方法和分頁類 方法/步驟 新建一個thinkphp項目tp,入口文件如下: 在App/Lib/Action下新建控制器,命名為:Admin ...
  15. thinkphp 分頁實例

    thinkphp 分頁實例 本示例提供的是一個會員列表的分頁. class UserAction extends Action{ public function lists(){ $m=M('Admi ...
  16. thinkphp 3.2 分頁

    thinkphp 3.2 版本的官方手冊上一直沒有數據分類的說明,我今天試著調試了一下,基本行得通,給一些初學者看看. 工具/原料 ThinkPHP3.2.3完整版 方法/步驟 查詢滿足要求的總記錄數 ...
  17. 網站中常常用到分頁功能用Bootstrap實現很便捷

    網站中常常用到分頁功能用Bootstrap實現很便捷 方法/步驟 在各種系統中分頁是必不可少的,當系統要展示的數據較多時,一個頁面不可能將所有的數據全部展示出來,這個時候就需要使用分頁.Bootstr ...
  18. Thinkphp分頁功能的實現

    下面就來詳細介紹一下Thinkphp帶有分頁樣式功能的分頁實現,同大家一同分享, 工具/原料 一台能上網的正常使用的電腦 安裝wamp環境 方法/步驟 首先我們在控制器中編寫分頁函數, 然後在view ...
  19. ThinkPHP與UCenter整合詳解

                                      ThinkPHP與UCenter整合詳解 網誌博客原創 最近應公司的要求,要開發一個有點像QQ空間那樣的會員管理中心網站,發現UCe ...
  20. Thinkphp 3.2.3 圖片文件上傳整合umeditor

    博主最近在用thinkphp 3.2.3 開發一個社區系統,用到了Umeditor,整合了一下:把整合的過程,整理一下,發博上來一下了. 工具/原料 百度Umeditor編輯器:http://uedi ...