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

 更新时间:2015年12月28日 11:26:00   作者:zm2714  
这篇文章主要介绍了Yii中CGridView实现批量删除的方法,实例分析了CGridView的相关设置,前台JS调用与后台Action具体功能实现的技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • laravel通用化的CURD的实现

    laravel通用化的CURD的实现

    这篇文章主要介绍了laravel通用化的CURD的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 如何在centos8自定义目录安装php7.3

    如何在centos8自定义目录安装php7.3

    在本文中我们将给大家介绍如何在centos8自定义目录安装php7.3,在选择要安装的PHP版本之前,请确保你的应用程序支持它,我们还将向你展示如何将PHP与Nginx和Apache集成,感兴趣的朋友跟随小编一起看看吧
    2019-11-11
  • php微信开发之谷歌测距

    php微信开发之谷歌测距

    这篇文章主要为大家详细介绍了php微信开发之谷歌测距的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • laravel按天、按小时,查询数据的实例

    laravel按天、按小时,查询数据的实例

    今天小编就为大家分享一篇laravel按天、按小时,查询数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • yii2实现分页,带搜索的分页功能示例

    yii2实现分页,带搜索的分页功能示例

    本篇文章主要介绍了yii2实现分页,带搜索的分页功能示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-01-01
  • Laravel框架控制器的request与response用法示例

    Laravel框架控制器的request与response用法示例

    这篇文章主要介绍了Laravel框架控制器的request与response用法,结合实例形式分析了Laravel框架控制器的request与response发送请求及响应请求的相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • php实现微信扫码自动登陆与注册功能

    php实现微信扫码自动登陆与注册功能

    这篇文章主要介绍了php实现微信扫码自动登陆与注册功能,结合实例形式分析了php微信二维码识别接口与相关使用技巧,需要的朋友可以参考下
    2016-09-09
  • php实现统计IP数及在线人数的示例代码

    php实现统计IP数及在线人数的示例代码

    这篇文章主要介绍了php实现统计IP数及在线人数的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Laravel中Trait的用法实例详解

    Laravel中Trait的用法实例详解

    这篇文章主要介绍了Laravel中Trait的用法,结合实例形式详细描述了Trait的功能特性及在Laravel的相关使用技巧,需要的朋友可以参考下
    2016-03-03
  • PHP实现的简单三角形、矩形周长面积计算器分享

    PHP实现的简单三角形、矩形周长面积计算器分享

    这篇文章主要介绍了PHP实现的简单三角形、矩形周长面积计算器分享,本文的实现相对较简单,同时提供了代码文件下载,需要的朋友可以参考下
    2014-11-11

最新评论