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 相关文章推荐
杏林同学录(四)
Oct 09 PHP
mysql 字段类型说明
Apr 27 PHP
PHP连接access数据库
Mar 27 PHP
基于python发送邮件的乱码问题的解决办法
Apr 25 PHP
采用thinkphp自带方法生成静态html文件详解
Jun 13 PHP
php更新mysql后获取改变行数的方法
Dec 25 PHP
php实现的操作excel类详解
Jan 15 PHP
PHP简单创建压缩图的方法
Aug 24 PHP
thinkPHP多语言切换设置方法详解
Nov 11 PHP
php中bind_param()函数用法分析
Mar 28 PHP
PHP实现模拟http请求的方法分析
Dec 20 PHP
one.php 多项目、函数库、类库 统一为一个版本的方法
Aug 24 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配置心得包含MYSQL5乱码解决
2006/11/20 PHP
用phpmyadmin更改mysql5.0登录密码
2008/03/25 PHP
php zend解密软件绿色版测试可用
2008/04/14 PHP
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
2013/06/03 PHP
phpinfo的知识点总结
2019/10/10 PHP
filters.revealTrans.Transition使用方法小结
2010/08/19 Javascript
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
js中一维数组和二位数组中的几个问题示例说明
2014/07/17 Javascript
原生js结合html5制作小飞龙的简易跳球
2015/03/30 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
AngularJS实现表单手动验证和表单自动验证
2015/12/09 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
JavaScript正则表达式exec/g实现多次循环用法示例
2017/01/17 Javascript
Vue.js结合Ueditor富文本编辑器的实例代码
2017/07/11 Javascript
js实现鼠标拖拽多选功能示例
2017/08/01 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
使用koa2创建web项目的方法步骤
2019/03/12 Javascript
node之本地服务器图片上传的方法示例
2019/03/26 Javascript
使用纯前端JavaScript实现Excel导入导出方法过程详解
2020/08/07 Javascript
Python获取linux主机ip的简单实现方法
2016/04/18 Python
使用python实现接口的方法
2017/07/07 Python
python3 拼接字符串的7种方法
2018/09/12 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
python中Lambda表达式详解
2019/11/20 Python
Anaconda 查看、创建、管理和使用python环境的方法
2019/12/03 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
荷兰网上鞋店:Ziengs.nl
2017/01/02 全球购物
英国时尚高尔夫服装购物网站:Trendy Golf
2020/01/10 全球购物
求网格中的黑点分布
2013/11/06 面试题
小学教师自我鉴定范文
2014/03/20 职场文书
年终晚会主持词
2014/03/25 职场文书
2015年教师节主持词
2015/07/03 职场文书
机械原理课程设计心得体会
2016/01/15 职场文书