教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 Yii学习笔记之CGridView数据列表添加复选框提供多选批量删除、更新等功能

Yii学习笔记之CGridView数据列表添加复选框提供多选批量删除、更新等功能

发布时间:2023-05-10   编辑:jiaochengji.com
教程集为您提供Yii学习笔记之CGridView数据列表添加复选框提供多选批量删除、更新等功能等资源,欢迎您收藏本站,我们将为您提供最新的Yii学习笔记之CGridView数据列表添加复选框提供多选批量删除、更新等功能资源
下面我们来看看关于小编整理的一篇关于Yii CGridView数据列表添加复选框提供多选批量删除、更新等功能,希望下文会给各位带来帮助.

Yii框架是一个很方便又好用的框架,就是文档上不是那么的完善,有很多东西需要挖掘代码。
近日,使用Yii框架开发的时候,就遇上了这么一些问题,需要为CGridView列表提供复选框功能,方便同时批量更新多条数据。
以下是步骤:


1. columns中增加一列放置checkbox
2. widget下添加div放置操作按钮
3. 添加CheckAll和Ajax提交数据

完整代码如下:

<?php $this->widget('zii.widgets.grid.CGridView', array(
 'id'=>'user-grid',
 'dataProvider'=>$model->search(),
 'filter'=>$model,
 'columns'=>array(
        array(
            'selectableRows' => 2,
            'class' => 'CCheckBoxColumn',
            'headerHtmlOptions' => array('width'=>'18px','align'=>'center'),
            'checkBoxHtmlOptions' => array('name' => 'ids[]','align'=>'center'),
        ),
 'id',
 'username',
 'email',
 'phone',
        array('name'=>'status','type'=>'raw','value'=>'($data->status>0?"正常":"禁用")'),
        array('name'=>'created','type'=>'date'),
        array('name'=>'updated','type'=>'date'),
 array(
      'class'=>'CButtonColumn',
 ),
 ),
)); ?>
<select name="status" id="status">
    <option value="1">正常</option>
    <option value="0">禁用</option>
</select>
<button type="button" onclick="setStatus();" style="width:120px;">设置状态</button>
<script type="text/javascript">
    function getData(){
        var data=new Array();
        $("input:checkbox[name='ids[]']").each(function (){
            if($(this).attr("checked")){
                data.push($(this).val());
            }
        });
 
        return data;
    }
    function setStatus(){
        var data = getData();
        if(data.length < 1) {
            alert('请至少选择一个项目。');
            return ;
        }
 
        $.post("index.php?r=user/status",{'ids[]':data,'status':$('#status').val()}, function (data) {
            if (data=='ok') {
                alert('设置状态成功!');
            }else{
                alert('设置状态失败,请重试!');
            }
            window.open('index.php?r=user/admin','mainFrame');;
        });
    }
</script>

最后,提供一个示例图,仅供参考:

Yii框架CGridView数据列表添加复选框提供多选批量删除、更新等功能

您可能感兴趣的文章:
php面向对象框架有哪些
php用什么软件编程
Jquery实战_读书笔记1—选择jQuery
flask如何更新数据库
良心推荐的五大敏捷好用的PHP开发框架
高性能mysql(第二版)学习笔记之架构优化和索引
mysql的存储过程与触发器学习笔记
防订单重复提交策略方法
PHP面试题大全(值得收藏)
批量添加防火墙例外端口的批处理脚本学习

[关闭]
~ ~