如何在我的视图中获取当前的页面大小?我希望能够在达到一半页面大小时添加横幅。
如果页面尺寸为10,请在第5位插入横幅
我尝试在view.php
if ($index == ($dataProvider->pagination->pageSize / 2)) { ... }
这是我的index.php
$this->widget ( 'site.common.extensions.EListView.EListView', array (
'dataProvider' => $dataProvider,
'itemView' => '_view_gallery',
'pagerCssClass' => 'pagination',
'template' => '
<div class="row">
<div class="col-md-12">
<div class="row">
<div class="col-md-12">
<div class="pull-right">{sorter}</div>
<div class="pull-left"></div>
</div>
</div>
<div class="row">
<div class="col-md-12">{items}</div>
</div>
<div class="row padding-top-20px">
<div class="col-md-12">
{pager}
</div>
</div>
</div></div>',
'pager' => array (
'id' => '_pagination',
'class' => 'LinkPager',
'header' => '',
'htmlOptions' => array (
'class' => 'pagination'
)
),
'emptyText' => '<div class="alert alert-info">No result found.</div>'
)
);
但没有任何反应。
我目前正在使用此扩展程序来创建页面大小。
http://www.yiiframework.com/extension/elistview
也试过没有使用这个扩展,但仍然没有运气。 我使用的是Yii 1.1.16 。
任何想法?
答案 0 :(得分:0)
在_view_gallery.php中,您可以使用CListView和CGridView(http://www.yiiframework.com/wiki/252/special-variables-in-cgridview-and-clistview/)可用的特殊变量来获取pageSize。
这可能是这样的:
if($widget->dataProvider->pagination->pageSize == 10){
//do something here
}
直接访问$ dataProvider不会导致任何结果,因为该变量对视图没有任何意义。