yii2使用GridView实现数据全选及批量删除按钮示例

时间:2021-05-25

整理文档,发现一个用GridView实现数据全选及批量删除按钮示例,稍微整理精简一下做下分享。

先来看实现的效果

关键代码如下:

<?= GridView::widget([ 'dataProvider' => $dataProvider, 'showFooter' => true, //设置显示最下面的footer 'id' => 'grid', 'columns' => [ [ 'class'=>CheckboxColumn::className(), 'name'=>'id', 'headerOptions' => ['width'=>'30'], 'footer' => '<button href="#" rel="external nofollow" class="btn btn-default btn-xs btn-delete" url="'. Url::toRoute('admin/delete') .'">删除</button>', 'footerOptions' => ['colspan' => 5], ], ['attribute' => 'id', 'footerOptions' => ['class'=>'hide']], //其他列每个都要增加footerOptions项,设置class为hide,到达隐藏效果; ['attribute' => 'username', 'footerOptions' => ['class'=>'hide']], [ 'attribute' => 'status', 'value' => function($model){ if ($model->status == Admin::STATUS_ACTIVE){ return '启用'; } return '禁用'; }, 'footerOptions' => ['class'=>'hide'] ], ['class' => 'yii\grid\ActionColumn', 'header' => '管理操作', 'footerOptions' => ['class'=>'hide']], ], 'layout' => "{items}\n{pager}" ]); ?>

最后已选数据的获取:

var ids = $("#grid").yiiGridView("getSelectedRows");

获取数据后就可以ajax提交到想要的controller

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章