2012-03-26 68 views
2

你好是可以添加另一个删除按钮Yii CGridView? 我希望它对我的一个控制器发出ajax post请求。CGridView添加另一个删除按钮与AJAX张贴请求

的使用情况是:

可以说我有意见博客条目。在管理方面,我希望有一个gridview,我可以删除这个博客条目(这已经是可能的)。我还想在原始删除按钮旁边有另一个删除按钮,它只会删除博客的评论(我不知道如何添加)。

我查看了Yii框架生成的HTML,看看原始删除按钮是如何工作的。一种可能的解决方案是复制/粘贴删除和刷新java脚本代码并稍微修改它。但我不喜欢这个。我有一些担心,如果我这样做,当我升级Yii框架时,不能保证我的解决方案仍然可以工作。

回答

0

你可以按照这个Using CButtonColumn to customize buttons in CGridView添加一个新的按钮,这将调用控制器中的动作来删除注释。干杯。

+0

我已经尝试了通过向CButtonColumn的按钮属性添加自定义按钮。问题是按钮数组中的click元素没有得到php评估(作为url),所以我不能将行的ID传递给我的ajax post请求。 – netuser24 2012-03-26 13:54:48

+0

我很抱歉,因为我想我不明白你的问题。 – Puigcerber 2012-03-28 07:43:55

4

使用上面的教程,并添加类=“删除”为新的按钮

'options'=>array('class'=>'delete') 

Yii框架AJAX调用分配给这个类。

array('class'=>'CButtonColumn','template'=>'{remove}{view}{update}{delete}', 
      'htmlOptions'=>array('style'=>'width:65px'), 
      'buttons'=>array(
      'remove'=>array('url'=>'Yii::app()->createUrl("resolution/removeApp", array("id_application"=>$data->id_application,"id_resolution"=>'.$model->id_resolution.'))','label'=>'Remove application from resolution.','imageUrl'=>Yii::app()->request->baseUrl.'/images/remove.png','options'=>array('class'=>'delete')), 
      )) 
+0

+1真棒解决方案! – 2013-08-20 10:36:09