1

在 CGridView 中生成一个在新浏览器窗口中打开页面的按钮时,我遇到了很大的问题。这是代码,我使用:

'preview' => array(
  'value' => 'CHtml::link("test", array("classified/preview", "id"=>$data->id), array("target"=>"_blank"))',
  'header' => 'Name',
  'name' => 'name',
  'type' => 'raw',
),

生成的链接如下所示:

http://localhost/fotomarkt/index.php?r=classified/listmine#

所以链接是错误的,“target=_blank”被忽略了。

我也看到bool.dev 的好答案,但不知何故,它对我不起作用......

我想,这是一些愚蠢的事情,我根本没有看到......

4

1 回答 1

2

上面的代码适用于CGridColumn. 但是,看起来您正在使用CButtonColumn. 下面的代码应该足够了。

'preview' => array(
    'url' => 'array("classified/preview", "id"=>$data->id)',
    'label'=>'test',
    'options'=>array("target"=>"_blank"),
),

此外,如果您需要一个列,其中每个单元格仅包含一个链接,aCLinkColumn将比 CGridColumn 更适合。

于 2013-06-14T10:00:48.677 回答