浅析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 相关文章推荐
PHP在字符串中查找指定字符串并删除的代码
Oct 02 PHP
PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
Jun 09 PHP
php使用parse_url和parse_str解析URL
Feb 22 PHP
php字符串按照单词进行反转的方法
Mar 14 PHP
如何使用php实现评委评分器
Jul 31 PHP
yii数据库的查询方法
Dec 28 PHP
php实现搜索类封装示例
Mar 31 PHP
PHP通过curl获取接口URL的数据方法
May 31 PHP
php微信公众号开发之微信企业付款给个人
Oct 04 PHP
Laravel定时任务的每秒执行代码
Oct 22 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 PHP
PHP扩展安装方法步骤解析
Nov 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
《雄兵连》《烈阳天道》真的来了
2020/07/13 国漫
ThinkPHP里用U方法调用js文件实例
2015/06/18 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
php session的应用详细介绍
2017/03/22 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
关于捕获用户何时点击window.onbeforeunload的取消事件
2011/03/06 Javascript
将光标定位于输入框最右侧实现代码
2012/12/04 Javascript
图片img的src不变让浏览器重新加载实现方法
2013/03/29 Javascript
javascript静态页面传值的三种方法分享
2013/11/12 Javascript
jQuery获取当前对象标签名称的方法
2014/02/07 Javascript
jQuery中get方法用法分析
2016/12/07 Javascript
javascript设计模式之策略模式学习笔记
2017/02/15 Javascript
Vue 仿百度搜索功能实现代码
2017/02/16 Javascript
js随机生成一个验证码
2017/06/01 Javascript
vue-cli配置文件——config篇
2018/01/04 Javascript
使用JavaScript实现node.js中的path.join方法
2018/08/12 Javascript
微信小程序实现发送模板消息功能示例【通过openid推送消息给用户】
2019/05/05 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
django之跨表查询及添加记录的示例代码
2018/10/16 Python
Django forms表单 select下拉框的传值实例
2019/07/19 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
Python HTMLTestRunner测试报告view按钮失效解决方案
2020/05/25 Python
python实现凯撒密码、凯撒加解密算法
2020/06/11 Python
HTML5中drawImage用法分析
2014/12/01 HTML / CSS
有关HTML5中背景音乐的自动播放功能
2017/10/16 HTML / CSS
波兰在线儿童和婴儿用品零售商:pinkorblue
2019/06/29 全球购物
社团文化节邀请函
2014/01/10 职场文书
个人更名证明
2015/06/23 职场文书
父亲节感言
2015/08/03 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书
六年级作文之自救
2019/12/19 职场文书
教你如何使用Python下载B站视频的详细教程
2021/04/29 Python
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS
生命的关键成分来自太空?陨石说是的
2022/04/29 数码科技