2013-01-10 56 views
1

我的問題:兩個分頁選項位於不同的行上。Yii在自定義CListView中插入html

我:

<div class="search_result searchconright"> 
    <?php 
    $this->widget('zii.widgets.CListView', array(
     'id' => 'listViewSearch', 
     'dataProvider' => $model->search(), 
     'itemView' => '_index_post', 
     'enablePagination' => true, 
     'pager' => array(
         'cssFile' => Yii::app()->baseUrl . '/css/clistview.css', 
         'header' => false, 
         'firstPageLabel' => 'First', 
         'prevPageLabel' => 'Previous', 
         'nextPageLabel' => 'Next', 
         'lastPageLabel' => 'Last', 
        ), 
     'summaryText' => '', 
     'sortableAttributes' => array(
     ), 
    )); 
    ?> 
</div> 
<div class="pagetxt"> 
    <span>View</span> 
    <a class="page_search_limit">All</a> 
    &nbsp;&nbsp; 
    <a class="page_search_limit page_search_limit_active">3</a> 
    &nbsp; 
    <a class="page_search_limit page_search_limit_active">5</a> 
    &nbsp; 
    <a class="page_search_limit page_search_limit_active">24</a> 
    &nbsp; 
    <a class="page_search_limit">48</a> 
</div> 

,我想插入從控件類pagetxt整個HTML,因爲seccond分頁,是小部件分頁下;我想他們是在同一行

此外,其他建議是歡迎

分頁:enter image description here

回答

1

你有2種選擇,第一你正在做的方式,你可以使用CListView中的template財產,在小部件內添加你想要的HTML。

但它看起來像你正在嘗試做的,就是讓用戶指定他們希望每頁顯示的搜索元素的數量,所以我建議使用類似的PageSize extension

+0

是的,這是我用過的;這是有效的 –

1

我認爲你可以用CSS做到這一點:

.search_result, .pagetxt { 
    display: inline-block; 
} 

要改變CListView分頁HTML,你將不得不創建一個新的CLinkPager並傳遞參數給它。所以我認爲CSS更簡單:)

1

這純粹是一個佈局問題:您需要使用自定義HTML內聯頁面渲染器。

要做到這一點的一種方法是將display: line-block給予這兩個帶CSS的DIV,但當然你也可以使用其他技術,如浮動。

您可以通過在列表視圖中設置pagerCssClass屬性輕鬆地定位股票尋呼機;默認簡直是"pager",所以你可以做

$this->widget('zii.widgets.CListView', array(
     'id' => 'listViewSearch', 
     'pagerCssClass' => 'pager pager-inline' 
     // ... 
); 

,然後例如

.pager.pager-inline, .pagetxt { 
    display: inline-block; 
}