Cakephp,如何使用分页创建网格和列表视图?

时间:2014-06-03 16:07:46

标签: php listview cakephp gridview pagination

我打算用cakephp更改视图(网格或列表)。 所以我所做的就是:

$( document ).ready(function() {
    $(".lista_options #gridview").click(function(){
        $( "#content" ).addClass( 'cubos' );


    });

    $(".lista_options #listview").click(function(){
    $( "#content" ).removeClass( 'cubos' );


    });
});

这里的问题是我有一个分页器,因此当我改变页面以获得更多结果时,我选择的视图不会停留。我的问题是如何改变我的视图模式并在所有分页期间保持不变?

任何建议都是好的。提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用Cookie和(或)会话分享您的更改。当您单击以在列表和网格之间切换时,保存对cookie的更改,在页面加载时读取cookie并使用其值。

编辑:更新代码

使用此jquery plugin

在你的javascript中添加:

$( document ).ready(function() {
$(".lista_options #gridview").click(function(){
    $( "#content" ).addClass( 'cubos' );
    $.cookie.raw = true;
    $.cookie('CakeCookie[switch]', 'grid', { expires: 7, path: '/' });

});

$(".lista_options #listview").click(function(){
$( "#content" ).removeClass( 'cubos' );
    $.cookie.raw = true;
    $.cookie('CakeCookie[switch]', 'list', { expires: 7, path: '/' });

});
});

AppController的:: beforeFilter();

if($this->Cookie->check('switch')){
  $this->set('style', $this->Cookie->read('switch'));
}

index.ctp

<div class="<?php if($style == 'grid'){ ?> cubos <?php } ?>" > ...