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下载文件的代码示例
Jun 29 PHP
PHP取整数函数常用的四种方法小结
Jul 05 PHP
PHP运行环境配置与开发环境的配置(图文教程)
Jun 04 PHP
解析PHP实现多进程并行执行脚本
Jun 18 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
Nov 20 PHP
PHP+Mysql基于事务处理实现转账功能的方法
Jul 08 PHP
浅谈mysql_query()函数的返回值问题
Sep 05 PHP
PHP获取input输入框中的值去数据库比较显示出来
Nov 16 PHP
Yii 2.0在Grid中格式化时间方法示例
Jun 06 PHP
php使用scandir()函数扫描指定目录下所有文件示例
Jun 08 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
Oct 21 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
PHPUnit安装及使用示例
2014/10/29 PHP
学习php设计模式 php实现门面模式(Facade)
2015/12/07 PHP
使用symfony命令创建项目的方法
2016/03/17 PHP
总结PHP中数值计算的注意事项
2016/08/14 PHP
PHP串行化与反串行化实例分析
2016/12/27 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
在laravel中实现ORM模型使用第二个数据库设置
2019/10/24 PHP
IE6图片加载的一个BUG解决方法
2010/07/13 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
用JavaScript实现类似于ListBox功能示例代码
2014/03/09 Javascript
javascript获取元素离文档各边距离的方法
2015/02/13 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
2015/09/19 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
jQuery EasyUI中的日期控件DateBox修改方法
2016/11/09 Javascript
Bootstrap Table使用整理(五)之分页组合查询
2017/06/09 Javascript
vue中子组件传递数据给父组件的讲解
2019/01/27 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
2019/05/21 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
ES6 Object方法扩展的应用实例分析
2019/06/25 Javascript
使用 Vue-TCB 快速在 Vue 应用中接入云开发的方法
2020/02/10 Javascript
python脚本实现统计日志文件中的ip访问次数代码分享
2014/08/06 Python
跟老齐学Python之for循环语句
2014/10/02 Python
python通过yield实现数组全排列的方法
2015/03/18 Python
浅谈Python 字符串格式化输出(format/printf)
2016/07/21 Python
python编程实现随机生成多个椭圆实例代码
2018/01/03 Python
Python实现判断字符串中包含某个字符的判断函数示例
2018/01/08 Python
python中for循环变量作用域及用法详解
2019/11/05 Python
Python实现中值滤波去噪方式
2019/12/18 Python
详解python如何引用包package
2020/06/07 Python
python 制作磁力搜索工具
2021/03/04 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
皇家道尔顿官网:Royal Doulton
2017/12/06 全球购物
Wolford法国官网:奥地利奢侈内衣品牌
2020/08/11 全球购物
电台编导求职信
2014/05/06 职场文书
黄山导游词
2015/01/31 职场文书
2015年行政工作总结范文
2015/04/09 职场文书