Yii中CGridView实现批量删除的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-07-02 11:31:53 浏览: 评论:0
这篇文章主要介绍了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程序设计有所帮助。
Tags: Yii批量删除 CGridView
相关文章
- ·Yii把CGridView文本框换成下拉框的方法(2021-05-02)
 
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
 - PHP新手上路(一)(7)
 - 惹恼程序员的十件事(5)
 - PHP邮件发送例子,已测试成功(5)
 - 致初学者:PHP比ASP优秀的七个理由(4)
 - PHP会被淘汰吗?(4)
 - PHP新手上路(四)(4)
 - 如何去学习PHP?(2)
 - 简单入门级php分页代码(2)
 - php中邮箱email 电话等格式的验证(2)
 
