浅析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 的ArrayAccess接口 像数组一样来访问你的PHP对象
Oct 12 PHP
php文件上传表单摘自drupal的代码
Feb 15 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
PHP通过API获取手机号码归属地
May 28 PHP
PHP常见漏洞攻击分析
Feb 21 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
Mar 31 PHP
thinkPHP3.1验证码的简单实现方法
Apr 22 PHP
php监测数据是否成功插入到Mysql数据库的方法
Nov 25 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
Sep 29 PHP
layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例
May 12 PHP
php支付宝系列之电脑网站支付
May 30 PHP
php实现断点续传大文件示例代码
Jun 19 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类继承 extends使用介绍
2014/01/14 PHP
Win7 64位系统下PHP连接Oracle数据库
2014/08/20 PHP
详解php框架Yaf路由重写
2017/06/20 PHP
PHP 断点续传实例详解
2017/11/11 PHP
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
Jquery升级新版本后选择器的语法问题
2010/06/02 Javascript
Jquery练习之表单验证实现代码
2010/12/14 Javascript
jQuery级联操作绑定事件实例
2014/09/02 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
jQuery超简单选项卡完整实例
2015/09/26 Javascript
js获取隐藏元素宽高的实现方法
2016/05/19 Javascript
JS中mouseover和mouseout多次触发问题如何解决
2016/06/06 Javascript
详解angular中如何监控dom渲染完毕
2017/01/03 Javascript
微信小程序中多个页面传参通信的学习与实践
2017/05/05 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
JavaScript实现简单生成随机颜色的方法
2017/09/21 Javascript
基于匀速运动的实例讲解(侧边栏,淡入淡出)
2017/10/17 Javascript
JS基于for语句编写的九九乘法表示例
2018/01/04 Javascript
浅析Vue.js 中的条件渲染指令
2018/11/19 Javascript
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
JavaScript创建表格的方法
2020/04/13 Javascript
uni-app如何页面传参数的几种方法总结
2020/04/28 Javascript
Python中的if、else、elif语句用法简明讲解
2016/03/11 Python
python实现画一颗树和一片森林
2018/06/25 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
Python 进程之间共享数据(全局变量)的方法
2019/07/16 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
python获取linux系统信息的三种方法
2020/10/14 Python
韩国现代百货官网:Hmall
2018/03/21 全球购物
澳大利亚排名第一的狂热牛仔品牌:ONETEASPOON
2018/11/20 全球购物
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
澳大利亚领先的内衣店:Bendon Lingerie澳大利亚
2020/05/15 全球购物
高一家长会邀请函
2014/01/12 职场文书
市政管理求职信范文
2014/05/07 职场文书
2015年学习部工作总结范文
2015/03/31 职场文书
德劲DE1102数字调谐收音机机评
2022/04/07 无线电