2016-07-14 84 views
1

我在CakePHP 2上使用paginator。我已經將paginator從控制器發送到視圖。如果我調試分頁程序的下一個和上一個方法,這就是我得到:獲取Paginator的下一個和上一個的URL CakePHP 2

debug($this->Paginator->next(null, null, array('class' => 'disabled'))); 
'<span class="next"><a href="/Project/Controller/method/127151/page:2" rel="next"></a></span>' 

我需要做在同一個頁面的框架上的分頁,因此當用戶點擊一個或下一個頁面,並非所有頁面刷新,只是我用來顯示數據的框架。我將使用JQuery的$ .post方法來做到這一點,但我需要在href內部prev和next顯示的URL,而不是所有的跨度和其他元素,例如$ this-> Html-> url提供

有人知道如何從paginator的上一個和下一個方法中檢索URL?

回答

0

我找到一種方式來獲得這種解決使用PHP的DOM方法:

$htmlNext = $this->Paginator->next(null, null, array('class' => 'disabled')); //gets paginator next HTML tag 
    $domNext = new DOMDocument(); 
    $domNext->loadHTML($htmlNext); 
    $tagsNext = $domNext->getElementsByTagName('a'); 
    $theLinkNext = ""; 
    foreach ($tagsNext as $tag) 
    { 
     $theLinkNext = $tag->getAttribute('href'); 
    } 

現在你有下一個頁面的URL $ theLinkNext變量,那麼你只需要調用的jQuery。員額$並使用URL獲取數據:

var loadNotesPage = "<?php echo $theLinkNext ?>"; 
$.post(loadNotesPage, function (data) { 
    $('#loading-notes').html(data); 
}); 
相關問題