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与已存在的Java应用程序集成
Oct 09 PHP
php数据库连接时容易出错的特殊符号问题
Sep 01 PHP
fleaphp crud操作之findByField函数的使用方法
Apr 23 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
Jul 08 PHP
PHP利用imagick生成组合缩略图
Feb 19 PHP
php微信开发之批量生成带参数的二维码
Jun 26 PHP
laravel学习教程之存取器
Jul 30 PHP
PHP基于PDO实现的SQLite操作类【包含增删改查及事务等操作】
Jun 21 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
Nov 28 PHP
php中对象引用和复制实例分析
Aug 14 PHP
Yii框架响应组件用法实例分析
Sep 04 PHP
laravel清除视图缓存的代码
Oct 23 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的header和asp中的redirect比较
2006/10/09 PHP
PHP HTML代码串 截取实现代码
2009/06/29 PHP
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
2015/12/09 PHP
PHP 计算两个时间段之间交集的天数示例
2019/10/24 PHP
PHP实现计算器小功能
2020/08/28 PHP
JS特殊函数(Function()构造函数、函数直接量)区别介绍
2013/05/19 Javascript
js string 转 int 注意的问题小结
2013/08/15 Javascript
让浏览器DOM元素最后加载的js方法
2014/07/29 Javascript
jquery实现炫酷的叠加层自动切换特效
2015/02/01 Javascript
jQuery控制文本框只能输入数字和字母及使用方法
2016/05/26 Javascript
详解vue中computed 和 watch的异同
2017/06/30 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
JavaScript中Object值合并方法详解
2017/12/22 Javascript
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
Python类定义和类继承详解
2015/05/08 Python
Python sys.argv用法实例
2015/05/28 Python
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
python实现下载整个ftp目录的方法
2017/01/17 Python
django模板加载静态文件的方法步骤
2019/03/01 Python
Python求离散序列导数的示例
2019/07/10 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
python调用Matplotlib绘制分布点图
2019/10/18 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
如何通过Python3和ssl实现加密通信功能
2020/05/09 Python
django使用channels实现通信的示例
2020/10/19 Python
日本网路线上商品代购服务:转送JAPAN
2016/08/05 全球购物
欧洲最大的化妆品连锁公司:Douglas道格拉斯
2017/05/06 全球购物
大学新生军训自我鉴定
2014/03/18 职场文书
高一学生期末评语
2014/04/25 职场文书
农业开发项目建议书
2014/05/16 职场文书
反腐倡廉警示教育活动心得体会
2014/09/04 职场文书
就业协议书怎么填
2014/09/15 职场文书
发布会邀请函
2015/01/31 职场文书
军事博物馆观后感
2015/06/05 职场文书
python实现简易自习室座位预约系统
2021/06/30 Python