我想显示包含所有记录的CGridView组件,作为其相关更新页面的链接。
我希望每行末尾都有编辑按钮的功能,应用于整行。
如果我点击特定行上的任何地方,它会分别将我重定向到其更新屏幕。
在Yii的CGridView中可以吗?
答案 0 :(得分:27)
CGridView
'columns'=>array(
'id',
//'full_name',
//'username',
array(
'name' => 'full_name',
'value' => 'CHtml::link($data->full_name, Yii::app()
->createUrl("user/view",array("id"=>$data->primaryKey)))',
'type' => 'raw',
),
array(
'name' => 'username',
'value' => 'CHtml::link($data->username,Yii::app()->createUrl("user/view",array("id"=>$data->primaryKey)))',
'type' => 'raw',
),
'email',
要使整行成为链接,请尝试此...
<?php $this->widget('zii.widgets.grid.CGridView', array(
...
'htmlOptions'=>array('style'=>'cursor: pointer;'),
'selectionChanged'=>"function(id){window.location='" . Yii::app()->urlManager->createUrl('controller/action', array('id'=>'')) . "' + $.fn.yiiGridView.getSelection(id);}",
...
)); ?>
答案 1 :(得分:2)
实施这个:
'selectionChanged'=>"function(id){window.location='" . Yii::app()->urlManager->createUrl('servers/view', array('id'=>$model->id)) . "' + $.fn.yiiGridView.getSelection(id);}",
答案 2 :(得分:0)
将您的代码放入管理网格视图中 阵列(
'class'=>'CButtonColumn',
'header'=>'Action',
'htmlOptions'=>array('width'=>'75px'),
'template'=>'{Edit} {Delete}',
'buttons'=>array
(
'Edit' => array
(
'imageUrl'=>Yii::app()->request->baseUrl.'/images/update.png',
'url'=>'Yii::app()->createUrl(\'vendor/artist/update\', array(\'id\'=>$data["id"],\'vid\'=>'.$vid.'))',
'options' => array('class' => 'editevent'),
),
'Delete' => array
(
'imageUrl' => Yii::app()->request->baseUrl . '/images/delete.png',
'url'=>'Yii::app()->createUrl(\'vendor/artist/artistdelete\', array(\'id\'=>$data["id"],\'vid\'=>'.$vid.'))',
'options' => array('class' => 'status1'),
),
),
),