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


Posted in PHP onMarch 15, 2017

整理文档,搜刮出一个Yii实现复选框批量操作实例代码,稍微整理精简一下做下分享。

在视图下

<?php $this->widget('zii.widgets.grid.CGridView', array(
 'id'=>'user-grid',
 'dataProvider'=>$model->search(),//Model里需要有个search()方法,$model是Controller中传递的Model对象
// /'filter'=>$model,
 'columns'=>array(
    array(
      'selectableRows' => 2,
      'class' => 'CCheckBoxColumn',
      'headerHtmlOptions' => array('width'=>'18px','align'=>'center'),
      'checkBoxHtmlOptions' => array('name' => 'ids[]','align'=>'center'),
    ),
'homework_numberID',
'type',
'target',
'state',

'author_id',
    array('name'=>'state','type'=>'raw','value'=>'($data->state =="not_read" ?"未读":"已审核")'),
    // array('name'=>'passRecord','type'=>'date'),
    array('name'=>'submit_time','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 ;
    }
 //这里是传递的url post方法
    $.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>

在Model中的search()函数

public function search() 
  { 
    // @todo Please modify the following code to remove attributes that should not be searched. 

    $criteria=new CDbCriteria; 

    //$criteria->with = array('author'); //添加了和 author 的渴求式加载 
    // $this->state = "not_passed";
    $criteria->compare('state',$this->state); 


    //这里添加了一个 compare, username 是 User 表的字段,$this->name 是我们添加的属性,true 为模糊搜索 
    //$criteria->compare('username',$this->name,true); 

    return new CActiveDataProvider($this, array( 
     'criteria'=>$criteria, 
    ));

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php 仿Comsenz安装效果代码打包提供下载
May 09 PHP
php中去除所有js,html,css代码
Oct 12 PHP
php数组去重的函数代码
Feb 03 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 PHP
教你如何快捷的使用cmd访问mysql小技巧
May 26 PHP
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
Jun 12 PHP
为你总结一些php信息函数
Oct 21 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
Nov 20 PHP
基于php实现的验证码小程序
Dec 13 PHP
PHP 实现页面静态化的几种方法
Jul 23 PHP
php设计模式之抽象工厂模式分析【星际争霸游戏案例】
Jan 23 PHP
php-7.3.6 编译安装过程
Feb 11 PHP
thinkPHP实现签到功能的方法
Mar 15 #PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
Mar 14 #PHP
ThinkPHP框架分布式数据库连接方法详解
Mar 14 #PHP
让ThinkPHP的模板引擎达到最佳效率的方法详解
Mar 14 #PHP
thinkphp3.2实现跨控制器调用其他模块的方法
Mar 14 #PHP
Yii2下点击验证码的切换实例代码
Mar 14 #PHP
php分页查询的简单实现代码
Mar 14 #PHP
You might like
php a simple smtp class
2007/11/26 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
form表单传递数组数据、php脚本接收的实例
2017/02/09 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
jQuery中bind与live的用法及区别小结
2014/01/27 Javascript
jQuery中parents()和parent()的区别分析
2014/10/28 Javascript
JS实现点击文字对应DIV层不停闪动效果的方法
2015/03/02 Javascript
js实现开启密码大写提示
2016/12/21 Javascript
Angular的模块化(代码分享)
2016/12/26 Javascript
React根据宽度自适应高度的示例代码
2017/10/11 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
node.js express捕获全局异常的三种方法实例分析
2019/12/27 Javascript
Node.js API详解之 dgram模块用法实例分析
2020/06/05 Javascript
[55:26]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第一场 2月23日
2021/03/11 DOTA
Python中实现switch功能实例解析
2018/01/11 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
python 读取竖线分隔符的文本方法
2018/12/20 Python
python requests 库请求带有文件参数的接口实例
2019/01/03 Python
python之pyqt5通过按钮改变Label的背景颜色方法
2019/06/13 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
利用css3画个同心圆示例代码
2017/07/03 HTML / CSS
HTML5 解决苹果手机不能自动播放音乐问题
2017/12/27 HTML / CSS
瑞贝卡·泰勒官方网站:Rebecca Taylor
2016/09/24 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
北京-环亚运商测试题.net程序员初步测试题
2013/05/28 面试题
中学生旷课检讨书2篇
2014/10/09 职场文书
四风问题专项整治工作情况报告
2014/10/28 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
街道党风廉政建设调研报告
2015/01/01 职场文书
寒假致家长的一封信
2015/10/10 职场文书
安全生产学习心得体会
2016/01/18 职场文书