📅  最后修改于: 2023-12-03 15:35:48.923000             🧑  作者: Mango
Yii2 GridView是一个强大的扩展,用于显示网格数据,并提供了强大的选项和功能。其中包括选择列功能,允许用户通过单击选择特定的行并执行操作。
GridView十分灵活,支持许多配置和自定义选项。在GridView中,您可以定义要显示的列,分页和排序选项等等。下面是GridView的基本用法:
<?= GridView::widget([
'dataProvider' => $dataProvider, // 数据提供器
'filterModel' => $searchModel, // 查询模型
'columns' => [
['class' => 'yii\grid\SerialColumn'], // 序号列
'id',
'name',
'email:email',
[
'class' => 'yii\grid\ActionColumn', // 操作列
'template' => '{view} {update}', // 显示的操作图标
],
],
]); ?>
GridView提供了一个内置的选择列,可以将其添加到网格中以允许用户选择行。要启用选择列,请在GridView配置中添加以下代码:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\CheckboxColumn'],
'id',
'name',
'email:email',
[
'class' => 'yii\grid\ActionColumn',
'template' => '{view} {update}',
],
],
]); ?>
此处,默认添加了选择列。您可以在GridView中选择行,然后执行相应的操作(例如删除所选行)。
要更改选择列的名称,请添加header
属性:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
[
'class' => 'yii\grid\CheckboxColumn',
'header' => '选择',
],
'id',
'name',
'email:email',
[
'class' => 'yii\grid\ActionColumn',
'template' => '{view} {update}',
],
],
]); ?>
在表单提交后,您可以使用getSelectedRows()
方法获取所选行的ID:
// 获取选中行的ID(多个ID以逗号分隔)
var ids = $('#grid').yiiGridView('getSelectedRows');
GridView还提供了其他一些有用的选项和自定义功能,例如:
更多信息可以查看官方文档:GridView。