我有一个Yii助推器TbRelationalColumn并且它工作得很好,现在当记录更多时,分页显示正确但当我更改页面时整个网格消失,只有那个网格显示当前被选中,我必须刷新页面以返回所有相关列。这是我的代码:
$this->widget('bootstrap.widgets.TbExtendedGridView', array(
'filter'=>$model,
'dataProvider' => $model->search(),
'pager'=>array(
'firstPageCssClass'=>'previous',
'lastPageCssClass'=>'next',
),
'columns' => array_merge(array(
array('class'=>'bootstrap.widgets.TbRelationalColumn',
'name' => 'name',
'url' =>$this->createUrl('XXXXXXX'),
'value'=> $data->name
)
),array( 'XXXXXX','XXXXXX',
array(
'class'=>'CButtonColumn',
'template'=>'{update}',
'buttons'=>array(
'update' => array(
'label'=>'',
'imageUrl'=>Yii::app()->request->baseUrl.'/images/update.png',
),
),
),
)),
));
现在的问题是,当我们更改页面时,如何才能维护当前视图?相关列页面是否更改不是整个网格?
答案 0 :(得分:0)
注意:添加此行'template'=> “{物品} {寻呼机} {摘要}”,强>
以下示例:
$this->widget('booster.widgets.TbExtendedGridView', array(
'filter'=>$model,
'id'=>'mail-read-history-grid',
'type'=>'striped bordered',
'dataProvider' => $gridDataProvider,
'template' => "{items}{pager}{summary}",
'enableSorting' => false,
'columns' => array_merge(array(
array(
'class'=>'booster.widgets.TbRelationalColumn',
'name' => 'read_datetime',
'url' => $this->createUrl('site/relational'),
'value'=> '"test-subgrid"',
'afterAjaxUpdate' => 'js:function(tr,rowid,data){
bootbox.alert("I have afterAjax events too! This will only happen once for row with id: "+rowid);
}'
)
),$gridColumns),
));