`
dcj3sjt126com
  • 浏览: 1877779 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CGridView中实现批量删除

    博客分类:
  • YII
阅读更多

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.');
        }

 文章来源于:http://www.yiichina.com/forum/topic/469/

分享到:
评论
1 楼 pkuyjc 2013-05-03  
这个没法运行啊

相关推荐

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

    在Web应用中,批量删除记录的需求十分常见,本文详细介绍如何在Yii框架下使用CGridView实现批量删除记录的功能,包括CGridView设置、前台JavaScript调用以及后台Action的处理。 首先,要在CGridView中添加多选框,...

    Yii CGridView用法实例详解

    这包括显示模型属性、通过回调函数显示自定义内容以及使用内置的按钮列来实现常见的CRUD操作(创建、读取、更新和删除)。 CGridView非常适合用于展示结构化数据,比如数据库查询结果。它可以让用户通过点击列标题...

    Yii视图CGridView实现操作按钮定义地址示例

    在本实例中,我们将详细探讨如何在CGridView中实现操作按钮,包括定义按钮的URL地址,以及进行相关操作如更新(update)、删除(delete)等。 首先,CGridView的使用通常涉及到以下几个主要参数: 1. `id`:控件的...

    YII CGridView CListView 返回列表带记忆功能

    在这个特定的话题中,“YII CGridView CListView 返回列表带记忆功能”指的是如何在Yii框架中实现CGridView和CListView组件的分页功能,并且在用户翻页或刷新页面后仍能记住用户的筛选、排序和选择状态。 CGridView...

    Yii视图CGridView列表用法实例分析

    本实例将深入讲解CGridView在Yii视图中的使用方法,以及如何通过实例来实现其功能。 首先,CGridView的核心在于数据提供者(dataProvider),它负责获取并格式化数据。在上面的示例中,`$model-&gt;search()`返回了一...

    Yii中CGridView关联表搜索排序方法实例详解

    本文实例讲述了Yii中CGridView关联表搜索排序方法。分享给大家供大家参考。具体实现方法如下: 在Yii CGridView 关联表搜索排序实现方法有点复杂,今天看了一老外写的了篇游戏,下面我整理一下与各位朋友分享一下,...

    Yii实现复选框批量操作实例代码

    总结来说,在Yii框架中实现复选框批量操作涉及到视图层的CGridView组件配置,客户端的JavaScript交互逻辑以及服务器端的Model数据处理。通过这几个方面的协同工作,最终能够为用户提供高效便捷的批量操作功能。 ...

    Yii把CGridView文本框换成下拉框的方法

    然而,在默认设置中,CGridView的过滤器通常为文本框,这可能无法满足所有用户的需求,特别是在需要展示选项列表时,如数据库中的分类ID或套餐ID。在这种情况下,将文本框替换为下拉框可以显著提升用户体验,因为...

    Yii中CGridView禁止列排序的设置方法

    在CGridView的配置中,只要找到对应列的配置数组,并将`sortable`设置为`false`,即可实现禁止该列排序的目的。 以一段给定的配置代码为例,我们可以在数组的相应列配置中设置`sortable=&gt;false`,以此来禁止特定列...

    Yii框架扩展CGridView增加导出CSV功能的方法

    1、首先派生一个子类,添加一个action成员,在该视图的init函数中判断是浏览动作还是数据导出动作,如果是浏览动作者则保持默认行为,否则输出csv文件。 public function init() { if($this-&gt;action == 'export') ...

    PHP的Yii框架的基本使用示例

    在提供的示例中,我们看到了如何在CGridView中定义列,包括文章的标题、内容、标签、状态、创建时间、更新时间、作者ID、删除标志以及操作按钮列。 接下来,我们看看示例中提到的数据库操作。在Yii中,通常会使用...

    GridView 实现行号倒叙排列,

    为了提高用户体验和数据展示的灵活性,有时我们需要对`GridView`中的行号进行特殊处理,比如实现行号的倒序排列。本文将详细介绍如何在分页和不分页两种情况下实现`GridView`行号的倒序排列。 #### 二、基础知识 在...

Global site tag (gtag.js) - Google Analytics