浅析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 相关文章推荐
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
Mar 29 PHP
PHP 面向对象实现代码
Nov 11 PHP
PHP 事件机制(2)
Mar 23 PHP
php中使用explode查找某个字符是否存在的方法
Jul 12 PHP
php返回相对时间(如:20分钟前,3天前)的方法
Apr 14 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
Apr 20 PHP
PHP实现中文圆形印章特效
Jun 19 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
Jul 01 PHP
PHP实现QQ空间自动回复说说的方法
Dec 02 PHP
Zend Framework教程之模型Model用法简单实例
Mar 04 PHP
PHP基于Redis消息队列实现发布微博的方法
May 03 PHP
PHP用continue跳过本次循环中剩余代码的注意点
Jun 27 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
PHP生成二维码的两个方法和实例
2014/07/01 PHP
php简单统计字符串单词数量的方法
2015/06/19 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
php实现头像上传预览功能
2017/04/27 PHP
PHP命名空间用法实例分析
2019/09/04 PHP
PHP标准库 (SPL)――Countable用法示例
2020/06/05 PHP
javascript实现简单的html5视频播放器
2015/05/06 Javascript
浅谈javascript 函数表达式和函数声明的区别
2016/01/05 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
JQuery异步加载PartialView的方法
2016/06/07 Javascript
浅谈Node.js:Buffer模块
2016/12/05 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
使用OPENLAYERS3实现点选的方法
2020/09/24 Javascript
Angular如何在应用初始化时运行代码详解
2018/06/11 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
2019/01/07 Javascript
JS实现页面数据懒加载
2020/02/13 Javascript
[52:03]Secret vs VG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
pytorch使用Variable实现线性回归
2019/05/21 Python
使用python 对验证码图片进行降噪处理
2019/12/18 Python
python3.8下载及安装步骤详解
2020/01/15 Python
基于Python实现简单学生管理系统
2020/07/24 Python
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
简单说说tomcat的配置
2013/05/28 面试题
面向对象设计的原则是什么
2013/02/13 面试题
语文教育专业推荐信范文
2013/11/25 职场文书
心理健康教育心得体会
2013/12/29 职场文书
卫生安全检查制度
2014/02/04 职场文书
入党现实表现材料
2014/12/23 职场文书
故意杀人罪辩护词
2015/05/21 职场文书
2015暑期社会实践通讯稿
2015/07/18 职场文书
2016重阳节红领巾广播稿
2015/12/18 职场文书
2016年班主任培训心得体会
2016/01/07 职场文书
2016年感恩节活动总结大全
2016/04/01 职场文书