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 调试环境(IIS+PHP+MYSQL)
Jan 10 PHP
php empty,isset,is_null判断比较(差异与异同)
Oct 19 PHP
浅析php学习的路线图
Jul 10 PHP
生成随机字符串和验证码的类的PHP实例
Dec 24 PHP
php实现上传图片保存到数据库的方法
Feb 11 PHP
Yii使用smsto短信接口的函数demo示例
Jul 13 PHP
详解PHP中的 input属性(隐藏 只读 限制)
Aug 14 PHP
php插件Xajax使用方法详解
Aug 31 PHP
基于ThinkPHP5.0实现图片上传插件
Sep 25 PHP
php数据结构之顺序链表与链式线性表示例
Jan 22 PHP
laravel 框架结合关联查询 when()用法分析
Nov 22 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的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
Yii框架form表单用法实例
2014/12/04 PHP
微信公众平台实现获取用户OpenID的方法
2015/04/15 PHP
php简单截取字符串代码示例
2016/10/19 PHP
JavaScript Base64编码和解码,实现URL参数传递。
2006/09/18 Javascript
IE iframe的onload方法分析小结
2010/01/07 Javascript
仅Firefox中链接A无法实现模拟点击以触发其默认行为
2011/07/31 Javascript
JS和JQ的event对象区别分析
2014/11/24 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
Vue项目中使用Vux的安装过程
2018/05/01 Javascript
浅谈微信小程序之官方UI框架we-ui使用教程
2018/08/20 Javascript
nodejs中函数的调用实例详解
2018/10/31 NodeJs
微信小程序学习笔记之获取位置信息操作图文详解
2019/03/29 Javascript
微信公众号平台接口开发 获取access_token过程解析
2019/08/14 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
2019/10/09 Javascript
微信小程序全选多选效果实现代码解析
2020/01/21 Javascript
JS实现躲避粒子小游戏
2020/06/18 Javascript
[43:35]TI4 循环赛第二日Liquid vs Fnatic
2014/07/11 DOTA
Python开发WebService系列教程之REST,web.py,eurasia,Django
2014/06/30 Python
Python3.x版本中新的字符串格式化方法
2015/04/24 Python
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
windows10系统中安装python3.x+scrapy教程
2016/11/08 Python
Python 描述符(Descriptor)入门
2016/11/20 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
2018/06/11 Python
Python OpenCV图像指定区域裁剪的实现
2019/10/30 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
HTML5有哪些新特征
2015/12/01 HTML / CSS
优秀管理者事迹材料
2014/05/22 职场文书
爬山的活动方案
2014/08/16 职场文书
欢迎词范文
2015/01/27 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
污染环境建议书
2015/09/14 职场文书
浅谈node.js中间件有哪些类型
2021/04/29 Javascript
mysql幻读详解实例以及解决办法
2022/06/16 MySQL