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 相关文章推荐
对Session和Cookie的区分与解释
Mar 16 PHP
php字符串分割函数explode的实例代码
Feb 07 PHP
PHP Directory 函数的详解
Mar 07 PHP
PHP实现Soap通讯的方法
Nov 03 PHP
thinkphp模板的包含与渲染实例分析
Nov 26 PHP
PHP+redis实现添加处理投票的方法
Nov 14 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
php支持断点续传、分块下载的类
May 02 PHP
PHP编程快速实现数组去重的方法详解
Jul 22 PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 PHP
thinkphp3.2同时连接两个数据库的简单方法
Aug 13 PHP
laravel config文件配置全局变量的例子
Oct 13 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
2006/11/25 PHP
PHP生成月历代码
2007/06/14 PHP
php中$this-&amp;gt;含义分析
2009/11/29 PHP
PHP Web木马扫描器代码分享
2015/09/06 PHP
php简单日历函数
2015/10/28 PHP
php操作mongodb封装类与用法实例
2018/09/01 PHP
this和执行上下文实现代码
2010/07/01 Javascript
Jquery 监视按键,按下回车键触发某方法的实现代码
2014/05/11 Javascript
JavaScript中的small()方法使用详解
2015/06/08 Javascript
非常实用的vue导航钩子
2017/03/20 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
js中url对象化管理分析
2017/12/29 Javascript
node.js文件上传重命名以及移动位置的示例代码
2018/01/19 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
微信小程序实现页面下拉刷新和上拉加载功能详解
2018/12/03 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
JavaScript中的连续赋值问题实例分析
2019/07/12 Javascript
详解vuex的简单todolist例子
2019/07/14 Javascript
vue祖孙组件之间的数据传递案例
2020/12/07 Vue.js
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
[00:32]2018DOTA2亚洲邀请赛iG出场
2018/04/03 DOTA
Django实现分页功能
2018/07/02 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
python实现两个dict合并与计算操作示例
2019/07/01 Python
python 正则表达式参数替换实例详解
2020/01/17 Python
Python基础之字典常见操作经典实例详解
2020/02/26 Python
python画环形图的方法
2020/03/25 Python
Python如何使用队列方式实现多线程爬虫
2020/05/12 Python
Python Selenium库的基本使用教程
2021/01/04 Python
python 统计list中各个元素出现的次数的几种方法
2021/02/20 Python
编写strcpy函数
2014/06/24 面试题
绿色家庭事迹材料
2014/05/01 职场文书
安全生产年活动总结
2014/08/29 职场文书
大学拉赞助协议书范文
2014/09/26 职场文书
2015年法院工作总结范文
2015/04/28 职场文书
趣味运动会新闻稿
2015/07/17 职场文书