Won*_*nka 18 gridview row header yii2
在我的视图代码中我有这个:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
['label' => 'Training Score',
'attribute' => 'scoreTraining',
'format' => ['decimal',2],
],
['label' => 'Exam Score',
'attribute' => 'scoreExam',
'format' => ['decimal',2],
],
],
]);
Run Code Online (Sandbox Code Playgroud)
通常,标题名称为"Training Score"和"Exam Score"
是否可以在yii2 gridview中自定义标题行?所以我的标题行看起来像2行..
<table border=1>
<tr><th>Training <br> Score</th><th>Exam <br> Score</th></tr>
</table>Run Code Online (Sandbox Code Playgroud)
aro*_*hev 23
要实现这一点,请使用headerproperty而不是label:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
[
'header' => 'Training <br> Score',
'attribute' => 'scoreTraining',
'format' => ['decimal', 2],
],
[
'header' => 'Exam <br> Score',
'attribute' => 'scoreExam',
'format' => ['decimal', 2],
],
],
]);
Run Code Online (Sandbox Code Playgroud)
这样就不会对HTML内容进行编码.
官方文档:
小智 12
使用'label'属性设置标题:
http://www.yiiframework.com/doc-2.0/yii-grid-datacolumn.html# $ label-detail
这样排序功能仍然有效.
使用'encodeLabel'=> false来允许HTML实体
工作:
http://www.yiiframework.com/doc-2.0/yii-grid-datacolumn.html# $ encodeLabel-detail
例:
[
'attribute' => 'firstname',
'label' => 'First <br /> Name',
'encodeLabel' => false,
],
Run Code Online (Sandbox Code Playgroud)