我想在点击页面上的按钮时获取CGridview的页码?

时间:2012-12-06 16:08:27

标签: yii

我想要打印CGridview页面,其中包含360个结果,每页10个结果我需要在同一页面中的一个按钮,将当前10页的结果打印为pdf?

问题是我不知道如何访问相应的页面。假设我在页面中的结果为250到260.页面中的按钮应该只打印当前页面为pdf。

1 个答案:

答案 0 :(得分:0)

不确定最好的方法,因为它是通过ajax更新的,我认为没有任何迹象表明您可以获取用于链接的页码。

我不知道它是否适用于您的情况但是一种解决方法可能是使用javascript来检测哪些分页列表项已应用“选定”类?

Yii::app()->clientScript->registerScript('grabPageNo', "
    $('#getPageNum').on('click', function(event){
        var pageNumber = $('.yiiPager > .selected > a').html();
        alert('page is: '+pageNumber);
    });
");

echo CHtml::button('get page number',array('id'=>'getPageNum'));

如果您使用的是所有默认的CGridView选项,则单击上面代码中的按钮可以显示当前页码。然后,您可以将其附加到URL或类似内容,具体取决于您按钮的工作方式。

修改

实际上,这里有一些有趣的读物:How to return to current page in GridView?建议使用extension。而且在关于SO的问题答案中:Get the absolute row number in a grid