我有这个代码,但它只显示标签,没有复选框,但我需要两个。
GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
['class' => 'yii\grid\DataColumn'
.....],
['class' => 'yii\grid\CheckboxColumn',
'header' => 'Check All',
]
]])
答案 0 :(得分:6)
要了解CheckboxColumn
标题单元格的呈现方式,请检查renderHeaderCellContent()
类的yii\grid\CheckboxColumn
方法。
如果你想使用CheckboxColumn
的默认实现设置标题,你应该这样做:
use yii\helpers\Html;
[
'class' => 'yii\grid\CheckboxColumn',
'header' => Html::checkBox('selection_all', false, [
'class' => 'select-on-check-all',
'label' => 'Check All',
]),
],
请注意,您需要指定复选框的名称 - selection_all
(除非您更改name属性)。
此名称是动态计算的(name
与_all
字符串连接),然后在注册的javascript中使用。如果你设置错了,那么大量的选择将无法正常工作。