请参阅下面的代码片段:
<?php
//Sets the update and indicator elements by DOM ID
$paginator->options(array('update' => 'content','indicator' => 'spinner','url' =>$this->passedArgs));
echo $paginator->prev('<< Previous', null, null, array('class' => 'disabled'));
echo $paginator->next('Next >>', null, null, array('class' => 'disabled'));
?>
我的页面网址是 http://total.projectsjunction.com/artists/portfolios/1
现在我遇到了问题。我正在使用基于 AJAX 的 CakePHP 分页,但是当我单击下一页时,它会调用页眉和页脚两次。
如果我通过 AJAX 使用函数两次,如何只调用一次布局。
这样的事情可能会帮助你:
if( $this->RequestHandler->isAjax() ) {
$this->layout = false;
}
这将关闭 ajax 请求的布局,但否则保持打开状态。我相信这将特定于给定的请求,但我还没有测试过它,也从来不需要自己这样做。
这可能会帮助您解决问题。 它适用于 CakePHP 1.2,但希望是一个很好的起点。
http://bakery.cakephp.org/articles/view/easy-ajax-pagination-using-jquery
在 beforeFilter() 函数中尝试一下这个,我相信你的问题将会得到解决......
if ($this->RequestHandler->isAjax())
{
Configure::write('debug',0);
$this->header('Pragma: no-cache');
$this->header('Cache-control: no-cache');
$this->autoRender = false;
$this->autoLayout = false;
/*
for disable layout you can also use
$this->layout='';
$this->layout=false;
*/
}