浅析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 09 PHP
phpwind中的数据库操作类
Jan 02 PHP
JS中encodeURIComponent函数用php解码的代码
Mar 01 PHP
浅谈PHP强制类型转换,慎用!
Jun 06 PHP
php实现上传图片生成缩略图示例
Apr 13 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
Jun 12 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
Aug 18 PHP
跟我学Laravel之安装Laravel
Oct 15 PHP
浅析php单例模式
Nov 25 PHP
PHP实现支持SSL连接的SMTP邮件发送类
Mar 05 PHP
PHP addAttribute()函数讲解
Feb 03 PHP
深入解析PHP底层机制及相关原理
Dec 11 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 将bmp图片转为jpg等其他任意格式的图片
2009/06/29 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
2011/06/16 PHP
使用新浪微博API的OAuth认证发布微博实例
2015/03/27 PHP
jQuery使用手册之一
2007/03/24 Javascript
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
Javascript高级技巧分享
2014/02/25 Javascript
js实现延迟加载的方法
2015/06/24 Javascript
nodejs导出excel的方法
2015/06/30 NodeJs
全面解析JavaScript的Backbone.js框架中的Router路由
2016/05/05 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
纯JS实现可用于页码更换的飞页特效示例
2018/05/21 Javascript
JS实现点击按钮可实现编辑功能
2018/07/03 Javascript
Js 利用正则表达式和replace函数获取string中所有被匹配到的文本(推荐)
2018/10/28 Javascript
详解vue-cli+element-ui树形表格(多级表格折腾小计)
2019/04/17 Javascript
python使用正则表达式检测密码强度源码分享
2014/06/11 Python
Python中Continue语句的用法的举例详解
2015/05/14 Python
Php多进程实现代码
2018/05/07 Python
python 简单照相机调用系统摄像头实现方法 pygame
2018/08/03 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
如何基于python实现画不同品种的樱花树
2020/01/03 Python
Python Django中间件使用原理及流程分析
2020/06/13 Python
python 实现围棋游戏(纯tkinter gui)
2020/11/13 Python
python 爬虫如何实现百度翻译
2020/11/16 Python
python+openCV对视频进行截取的实现
2020/11/27 Python
俄罗斯女装店:12storeez
2019/10/25 全球购物
EntityManager都有哪些方法
2013/11/01 面试题
大学生水文观测实习自我鉴定
2013/09/29 职场文书
在校大学生个人的自我评价
2014/02/13 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
植树节口号
2014/06/21 职场文书
2016年父亲节寄语
2015/12/04 职场文书
python使用pymysql模块操作MySQL
2021/06/16 Python
Nginx配置https的实现
2021/11/27 Servers
mysql 索引的数据结构为什么要采用B+树
2022/04/26 MySQL