Yii2 GridView的afterRow调用每一个数据模型后,一个匿名函数。有没有办法只有最后一个数据模型后,做了一个匿名函数?我想补充的空白行和结尾。
<?= GridView::widget([
'dataProvider' => $dataProvider,
'id' => 'table',
'tableOptions' =>[
'class'=>'table table-condensed table-bordered'
],
'afterRow' => function($model, $key, $index) {
return Html::tag('tr',
Html::tag('td', Html::textInput($name))
.Html::tag('td', Html::textInput($name))
);
},
....
在GridView控件类的方法renderTableBody()
不允许这样的功能。你可以试着重写此方法或在您的afterRow匿名函数检查它是否是最后一个索引。
我觉得第二个选择是好。
添加 'showFooter'=>真实,
例:
<?= \yii\grid\GridView::widget([
'dataProvider' => $dataProvider,
'showFooter' => true,
'columns' => [
[
'attribute' => 'id',
'footerOptions' => ['colspan' => '2'],
'footer' => 'data footer', // or anonymous function
],
[
'attribute' => 'text',
'footerOptions' => ['style' => 'display:none;'],
],
],
]); ?>
'showFooter'=>true,
'footerRowOptions'=>['style'=>'property1:style, property2:style, ...],