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实现登陆验证码(类似条行码状)
Oct 09 PHP
php下使用无限生命期Session的方法
Mar 16 PHP
PHP 采集程序 常用函数
Dec 18 PHP
php写的带缓存数据功能的mysqli类
Sep 06 PHP
ThinkPHP使用smarty模板引擎的方法
Jul 01 PHP
如何让CI框架支持service层
Oct 29 PHP
两个php日期控制类实例
Dec 09 PHP
php针对cookie操作的队列操作类实例
Dec 10 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
Dec 15 PHP
win10环境PHP 7 安装配置【教程】
May 09 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
Apr 07 PHP
PHP解析url并得到url参数方法总结
Oct 11 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
《OVERLORD》手游英文版即将上线 手机上也能扮演骨王
2020/04/09 日漫
PHP小技巧搜集,每个PHPer都来露一手
2007/01/02 PHP
php实现mysql封装类示例
2014/05/07 PHP
php操作xml入门之cdata区段
2015/01/23 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
php使用APC实现实时上传进度条功能
2015/10/26 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
Laravel开启跨域请求的方法
2019/10/13 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
laravel 执行迁移回滚示例
2019/10/23 PHP
jquery的选择器的使用技巧之如何选择input框
2013/09/22 Javascript
图解prototype、proto和constructor的三角关系
2016/07/31 Javascript
浅谈Web页面向后台提交数据的方式和选择
2016/09/23 Javascript
JavaScript之cookie技术详解
2016/11/18 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
Vue点击切换颜色的方法
2018/09/13 Javascript
javascript实现文本框标签验证的实例代码
2018/10/14 Javascript
[01:10]DOTA2次级职业联赛 - U5战队宣传片
2014/12/01 DOTA
小结Python用fork来创建子进程注意事项
2014/07/03 Python
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python中列表的一些基本操作知识汇总
2015/05/20 Python
python中函数总结之装饰器闭包详解
2016/06/12 Python
Python通过RabbitMQ服务器实现交换机功能的实例教程
2016/06/29 Python
Django 使用logging打印日志的实例
2018/04/28 Python
python高阶爬虫实战分析
2018/07/29 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
关于解决iframe标签嵌套问题的解决方法
2020/03/04 HTML / CSS
HTML5 drag和drop具体使用详解
2021/01/18 HTML / CSS
爱游人:Travelliker
2017/09/05 全球购物
售后服务科岗位职责范文
2013/11/13 职场文书
财务部副经理岗位职责
2014/03/14 职场文书
幼儿园健康教育方案
2014/06/14 职场文书
人事专员岗位职责说明书
2014/07/30 职场文书
网络营销计划
2015/01/17 职场文书
工作自我评价范文
2019/03/21 职场文书