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

时间:2022-11-02 10:15:45

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

先来看实现的效果

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

关键代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?= 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}"
]); ?>

最后已选数据的获取:

?
1
var ids = $("#grid").yiigridview("getselectedrows");

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

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

原文链接:http://www.yiichina.com/tutorial/1178