我正在使用下面的代码。
[
'attribute' => 'Application',
'format' => 'html',
'value' => function ($dataProvider) {
$student_username = $dataProvider->student_username;
return Html::a('Print', Url::toRoute(['/coordinatorpanel/print-form', 'student_username' => $student_username]),
['target' => '_blank', 'class' => 'btn btn-success center-block']);
},
]
Run Code Online (Sandbox Code Playgroud)
HTML输出:
<a class="btn btn-success center-block" href="/nse/frontend/web/index.php?r=coordinatorpanel%2Fprint-form&student_username=COR39690113" target="_blank">
Run Code Online (Sandbox Code Playgroud)
但是,当我单击链接时,没有导航到新选项卡,该请求在同一选项卡中处理。我在“ Mozilla”和“ Chrome”上都尝试过。
任何帮助将被深深地提醒:)
在gridview中禁用Pjax。在我的情况下,我想在新窗口中显示图像,而它却以网格中的乱码出现。
'format' => "raw",
'value' => function ($d) {
return Html::a($d->image_filename, '/'.$d->imagePath(),['target'=>'_blank', 'data-pjax'=>"0"] );
},
Run Code Online (Sandbox Code Playgroud)
尝试如下更改代码
[
'attribute' => 'Application',
'format' => 'raw',
'value' => function ($dataProvider) {
$student_username = $dataProvider->student_username;
return Html::a('Print', Url::toRoute(['/coordinatorpanel/print-form', 'student_username' => $student_username]),
['target' => '_blank', 'class' => 'btn btn-success center-block']);
},
]
Run Code Online (Sandbox Code Playgroud)
在这里它用来'format' => 'raw'避免格式化。
我必须采取其他方式才能正确运行代码。
下面是我修改并为我工作的代码片段。我必须设置“onclick”事件并将 href 设置为空。
[
'attribute' => 'Application',
'format' => 'raw',
'value' => function ($dataProvider) {
$student_username = $dataProvider->student_username;
return Html::a('Print', '',
['onclick' => "window.open ('".Url::toRoute(['/coordinatorpanel/print-form',
'student_username' => $student_username])."'); return false",
'class' => 'btn btn-success center-block']);
},
],
Run Code Online (Sandbox Code Playgroud)