浅析Yii2 gridview实现批量删除教程


Posted in PHP onApril 22, 2016

在朋友圈里有童鞋向我讨论GridView的问题,有朋友说你用gridview给我去掉表头的链接?我想的很久,用gridview确实不容易实现。有不同见解的朋友欢迎留言。但是呢,这根gridview有个毛线关联啊,明明是要设置ActiveDataProvider,你要我怎么用gridview实现嘛。

这个问题也是很简单的,我们来看看具体实现

$dataProvider = new ActiveDataProvider([ 
'query' => $query, 
]); 
$dataProvider->setSort(false);

分分钟搞定不是事。

好了,我们来谈谈主题:如何利用yii2 gridview实现批量删除?

我先说一下几个步骤啊,免得直接贴代码有的小伙伴删了一句去了一句最后失败了!

1、gridview设置options时增加一个id 这里我们命名grid

'options' => [
// ...其他设置项
'id' => 'grid'
],

2、columns增加选项复选框,批量删除必然不可少了复选框操作,这里我们的name值设定为id,方便对数据操作

[
'class' => 'yii\grid\CheckboxColumn',
'name' => 'id',
],

3、页面上我们增加一个批量删除按钮,注意这里我们增加了一个class gridview,方便后面js实现点击效果

<?= Html::a('批量删除', "javascript:void(0);", ['class' => 'btn btn-success gridview']) ?>

4、最后一步,写js实现按钮操作,打开你的console看看,我们很轻松的就拿到了选中的行的id,然后这里就可以异步操作数据了。

<?php
$this->registerJs('
$(".gridview").on("click", function () {
//注意这里的$("#grid"),要跟我们第一步设定的options id一致
var keys = $("#grid").yiiGridView("getSelectedRows");
console.log(keys);
});
');
?>

下面贴上完整代码

GridView::widget([
// ......
'options' => ['class' => 'grid-view','style'=>'overflow:auto', 'id' => 'grid'],
// ......
'columns' => [
// ......
[
'class' => 'yii\grid\CheckboxColumn',
'name' => 'id',
],
// ......
],
]);
$this->registerJs('
$(".gridview").on("click", function () {
var keys = $("#grid").yiiGridView("getSelectedRows");
console.log(keys);
});
');

三水点靠木推荐阅读:

以上内容是小编给大家介绍的Yii2 gridview实现批量删除教程,希望对大家有所帮助!

PHP 相关文章推荐
实现分十页分向前十页向后十页的处理
Oct 09 PHP
SSI指令
Nov 25 PHP
PHP中$_SERVER的详细参数与说明
Jul 29 PHP
PHP实现的连贯操作、链式操作实例
Jul 08 PHP
Php连接及读取和写入mysql数据库的常用代码
Aug 11 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
php生成图片验证码的方法
Apr 15 PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 PHP
php读取本地json文件的实例
Mar 07 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
Nov 13 PHP
PHP时间相关常用函数用法示例
Jun 03 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 PHP
浅析Yii2 GridView 日期格式化并实现日期可搜索教程
Apr 22 #PHP
浅析Yii2 GridView实现下拉搜索教程
Apr 22 #PHP
PHP使用反射机制实现查找类和方法的所在位置
Apr 22 #PHP
浅析Yii2中GridView常见操作
Apr 22 #PHP
php简单实现sql防注入的方法
Apr 22 #PHP
PHP简单获取及判断提交来源的方法
Apr 22 #PHP
thinkPHP3.1验证码的简单实现方法
Apr 22 #PHP
You might like
header()函数使用说明
2006/11/23 PHP
php中的PHP_EOL换行符详细解析
2013/10/26 PHP
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
php去掉URL网址中带有PHPSESSID的配置方法
2014/07/08 PHP
php替换字符串中间字符为省略号的方法
2015/05/04 PHP
PHP设计模式之迭代器模式
2016/06/17 PHP
PHP实现的折半查找算法示例
2017/12/19 PHP
PHP 7.4 新语法之箭头函数实例详解
2019/05/09 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
学习JavaScript设计模式之模板方法模式
2016/01/20 Javascript
Express使用html模板的详细代码
2017/09/18 Javascript
Vue入门之数据绑定(小结)
2018/01/08 Javascript
Vue中this.$router.push参数获取方法
2018/02/27 Javascript
微信小程序里引入SVG矢量图标的方法
2019/09/20 Javascript
Vue toFixed保留两位小数的3种方式
2020/10/23 Javascript
vantUI 获得piker选中值的自定义ID操作
2020/11/04 Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
2020/11/13 Javascript
[04:54]DOTA2 2017国际邀请赛:上届冠军WINGS采访短片
2017/08/09 DOTA
python 文件与目录操作
2008/12/24 Python
python使用正则表达式检测密码强度源码分享
2014/06/11 Python
Python2.X/Python3.X中urllib库区别讲解
2017/12/19 Python
python引用(import)某个模块提示没找到对应模块的解决方法
2019/01/19 Python
Django框架自定义模型管理器与元选项用法分析
2019/07/22 Python
关于Tensorflow使用CPU报错的解决方式
2020/02/05 Python
Python selenium爬取微信公众号文章代码详解
2020/08/12 Python
css3实现书本翻页效果的示例代码
2021/03/08 HTML / CSS
html5新特性与用法大全
2018/09/13 HTML / CSS
会计专业的自荐信
2013/12/12 职场文书
餐饮管理自我介绍信
2014/01/15 职场文书
《春笋》教学反思
2014/04/15 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
文明单位创建材料
2014/12/24 职场文书
2015年公路养护工作总结
2015/05/13 职场文书
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS