Yii中CGridView实现批量删除的方法


Posted in PHP onDecember 28, 2015

本文实例讲述了Yii中CGridView实现批量删除的方法。分享给大家供大家参考,具体如下:

1. CGridView中的columns添加

array(
 'selectableRows' => 2,
 'footer' => '<button type="button" onclick="GetCheckbox();" style="width:76px">批量删除</button>',
 'class' => 'CCheckBoxColumn',
 'headerHtmlOptions' => array('width'=>'33px'),
 'checkBoxHtmlOptions' => array('name' => 'selectdel[]'),
),

作用是添加多选框

2.js代码

<script type="text/javascript">
/*<![CDATA[*/
var GetCheckbox = function (){
 var data=new Array();
 $("input:checkbox[name='selectdel[]']").each(function (){
  if($(this).attr("checked")==true){
    data.push($(this).val());
  }
 });
 if(data.length > 0){
  $.post('<?php echo CHtml::normalizeUrl(array('/admin/words/delall/'));?>',{'selectdel[]':data}, function (data) {
   var ret = $.parseJSON(data);
   if (ret != null && ret.success != null && ret.success) {
    $.fn.yiiGridView.update('yw1');
   }
  });
 }else{
  alert("请选择要删除的关键字!");
 }
}
/*]]>*/
</script>

3.Action

public function actionDelall()
{
 if (Yii::app()->request->isPostRequest)
 {
  $criteria= new CDbCriteria;
  $criteria->addInCondition('id', $_POST['selectdel']);
  Words::model()->deleteAll($criteria);//Words换成你的模型
  if(isset(Yii::app()->request->isAjaxRequest)) {
   echo CJSON::encode(array('success' => true));
  } else {
   $this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('index'));
  }
 }
 else
  throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
}

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
PHP和Mysqlweb应用开发核心技术-第1部分 Php基础-2 php语言介绍
Jul 03 PHP
PHP持久连接mysql_pconnect()函数使用介绍
Feb 05 PHP
PHP使用SOAP调用.net的WebService数据
Nov 12 PHP
php函数重载的替代方法--伪重载详解
May 08 PHP
php正则匹配文章中的远程图片地址并下载图片至本地
Sep 29 PHP
WordPress导航菜单的滚动和淡入淡出效果的实现要点
Dec 14 PHP
PHP在线书签系统分享
Jan 04 PHP
PHP无限极分类函数的实现方法详解
Apr 15 PHP
解决Laravel无法使用COOKIE和SESSION的问题
Oct 16 PHP
php实现的简单多进程服务器类完整示例
Feb 01 PHP
PHP日期和时间函数的使用示例详解
Aug 06 PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 #PHP
yii权限控制的方法(三种方法)
Dec 28 #PHP
Yii使用Captcha验证码的方法
Dec 28 #PHP
yii使用activeFileField控件实现上传文件与图片的方法
Dec 28 #PHP
yii实现使用CUploadedFile上传文件的方法
Dec 28 #PHP
Yii中Model(模型)的创建及使用方法
Dec 28 #PHP
yii数据库的查询方法
Dec 28 #PHP
You might like
PHP中用hash实现的数组
2011/07/17 PHP
PHP写的获取各搜索蜘蛛爬行记录代码
2012/08/21 PHP
PHP setTime 设置当前时间的代码
2012/08/27 PHP
PHP小程序支付功能完整版【基于thinkPHP】
2019/03/26 PHP
PHP 扩展Memcached命令用法实例总结
2020/06/04 PHP
网络之美 JavaScript中Get和Set访问器的实现代码
2010/09/19 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
PHP+jQuery+Ajax实现多图片上传效果
2015/03/14 Javascript
JS异步加载的三种实现方式
2017/03/16 Javascript
React操作真实DOM实现动态吸底部的示例
2017/10/23 Javascript
Vue实现导航栏点击当前标签变色功能
2020/08/19 Javascript
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
python操作字典类型的常用方法(推荐)
2016/05/16 Python
如何利用Fabric自动化你的任务
2016/10/20 Python
Python pandas常用函数详解
2018/02/07 Python
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
django静态文件加载的方法
2018/05/20 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
Python subprocess模块功能与常见用法实例详解
2018/06/28 Python
详解Python的循环结构知识点
2019/05/20 Python
程序员的七夕用30行代码让Python化身表白神器
2019/08/07 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
Python实现随机取一个矩阵数组的某几行
2019/11/26 Python
pyspark 随机森林的实现
2020/04/24 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
2021/02/22 Python
html5跨域通讯之postMessage的用法总结
2013/11/07 HTML / CSS
mysql有关权限的表都有哪几个
2015/04/22 面试题
医学专业毕业生个人求职信
2013/12/25 职场文书
男方父母婚礼答谢词
2014/01/25 职场文书
计算机专业应届生求职信
2014/04/06 职场文书
爱心捐助倡议书
2014/05/19 职场文书
绘画专业自荐信
2014/07/04 职场文书
岳麓书院导游词
2015/02/03 职场文书
怎样写辞职信
2015/02/27 职场文书
Java数据开发辅助工具Docker与普通程序使用方法
2021/09/15 Java/Android
OpenStack虚拟机快照和增量备份实现方法
2022/04/04 Servers