浅析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 相关文章推荐
IP138 IP地址查询小偷实现代码
Feb 15 PHP
ThinkPHP的L方法使用简介
Jun 18 PHP
PHP反射使用实例和PHP反射API的中文说明
Jul 02 PHP
Yii调试SQL的常用方法
Jul 09 PHP
PHP排序算法类实例
Jun 17 PHP
Yii2.0表关联查询实例分析
Jul 18 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
详解php用static方法的原因
Sep 12 PHP
PHP的JSON封装、转变及输出操作示例
Sep 27 PHP
PHP 代码简洁之道(小结)
Oct 16 PHP
php + ajax 实现的写入数据库操作简单示例
May 16 PHP
PHP sdk实现在线打包代码示例
Dec 09 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
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
php创建session的方法实例详解
2015/01/27 PHP
浅谈PHP链表数据结构(单链表)
2016/06/08 PHP
Prototype使用指南之hash.js
2007/01/10 Javascript
javascript 24小时弹出一次的代码(利用cookies)
2009/09/03 Javascript
Wordpress ThickBox 添加“查看原图”效果代码
2010/12/11 Javascript
通过百度地图获取公交线路的站点坐标的js代码
2012/05/11 Javascript
使用ajax+jqtransform实现动态加载select
2014/12/01 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
需要牢记的JavaScript基础知识
2016/09/25 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
JS实现AES加密并与PHP互通的方法分析
2017/04/19 Javascript
详解webpack的proxyTable无效的解决方案
2018/06/15 Javascript
Vue实现6位数密码效果
2018/08/18 Javascript
小程序实现悬浮搜索框
2019/07/12 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
2020/02/15 Javascript
[01:34]DOTA2 7.22版本新增神杖效果一览(敏捷英雄篇)
2019/05/28 DOTA
浅谈Python中的闭包
2015/07/08 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
浅谈python中字典append 到list 后值的改变问题
2018/05/04 Python
python处理大日志文件
2019/07/23 Python
python同时替换多个字符串方法示例
2019/09/17 Python
Python自动化测试基础必备知识点总结
2021/02/07 Python
证券期货行业个人的自我评价
2013/12/26 职场文书
活动总结书
2014/05/08 职场文书
自动化专业毕业生求职信
2014/06/18 职场文书
社区平安建设汇报材料
2014/08/14 职场文书
2014年政教处工作总结
2014/12/20 职场文书
党的群众路线教育实践活动先进个人材料
2014/12/24 职场文书
安阳殷墟导游词
2015/02/10 职场文书
2015年电信员工工作总结
2015/05/26 职场文书
《我是什么》教学反思
2016/02/16 职场文书
Python实现Hash算法
2022/03/18 Python
Java实现经典游戏泡泡堂的示例代码
2022/04/04 Java/Android