| 參數 | 描述 |
|---|---|
| list_rows | 每頁數量 |
| page | 當前頁 |
| path | url路徑 |
| query | url額外參數 |
| fragment | url錨點 |
| var_page | 分頁變量 |
| type | 分頁類名 |
$caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);
所以我們分頁查詢寫成上面代碼所示。
這樣頁面顯示每個分頁上面變成了AjaxPage('當前分頁數,自動變化')
然后我們就可以在頁面中寫一個對應的函數AjaxPage(page),來完成對應的ajax請求查詢,在返回到指定的視圖中
ajax請求控制器方法如下
public function all()
{
$caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);
return view('getall',['res'=>$caseDetails]);
}
如果選項卡帶ID再次查詢對應當前分類,可以使用如下
public function getAjax($id,$page=1)
{
$res = CaseDetails::where(['category'=>$id])->paginate(9,false,['page'=>$page,'path'=>"javascript:AjaxDetailsPage({$id},[PAGE]);"]);
return view('',['res'=>$res]);
}
js代碼如下:
function AjaxPage(page){
$.get('/index/successcase/getAll',{ page:page },function (data) {
$('.little-content').html(data);
})
}
$('.on').hover(function(){
$.get('/index/successcase/all',function (data) {
$('.little-content').html(data);
})
});
$('.title-id').hover(function(){
var id = $(this).attr('title');
$.get('/index/successcase/getajax',{ 'id':id },function(data){
$('.little-content').html(data);
});
});
function AjaxDetailsPage(id,page){
$.get('/index/successcase/getAjax',{ id:id,page:page },function (data) {
$('.little-content').html(data);
})
}
ajax作用范圍視圖
{volist name="res" id="casedetails"}
li class="little-block">
img src="{$casedetails.pic}"/>
div class="mb-text">
div class="text">
h1>{$casedetails.name}/h1>
p class="p3">{$casedetails.caseCategory.name}/p>
a href="#" rel="external nofollow" >VIEW MORE/a>
/div>
/div>
/li>
{/volist}
br>
{$res->render()}
更多關于thinkPHP相關內容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術總結》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。