我想点击Grid View中的一个链接,它应该在新标签页面中打开一个新窗口.我不想要CHtml :: Link答案,因为它是YII 1.1,我使用的是YII 2.0.
以下代码在网格视图内.
['attribute'=>'EMPLOYEEID',
'label'=>'EMPLOYEEID',
'value'=> Html::a('E_ID', '?r=tb-run-engine/index', ['title' => 'Go']),
],
Run Code Online (Sandbox Code Playgroud)
我没有获得EMPLOYEEID的任何值,而是在网格视图中得到[notset]作为值.并且我也没有获得超链接.对yii 2.0的新手可以帮助我找出这个问题吗?
要在新标签/窗口中打开链接,您必须为此链接设置属性target ="_ blank":
<a href="some_url" target="_blank">some text</a>
Run Code Online (Sandbox Code Playgroud)
所以在Yii2中使用Html帮助器在视图文件中你可以写:
<?= Html::a("some text","some_url",['target'=>'_blank']) ?>
Run Code Online (Sandbox Code Playgroud)
在yii2网格中,您可以显示原始列:
[
'attribute'=>'name', //your model attribute
'format'=>'raw',
'value'=>function ($model, $index, $widget){
return Html::a(
$model->name, //link text
['page/update','id'=>$model->id], //link url to some route
[ // link options
'title'=>'Go!',
'target'=>'_blank'
]
);
}
],
Run Code Online (Sandbox Code Playgroud)