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来检测proxy
Oct 09 PHP
从MySQL数据库表中取出随机数据的代码
Sep 05 PHP
PHP的explode和implode的使用说明
Jul 17 PHP
php实现批量压缩图片文件大小的脚本
Jul 04 PHP
跟我学Laravel之请求(Request)的生命周期
Oct 15 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
Nov 04 PHP
php查询相似度最高的字符串的方法
Mar 12 PHP
PHP  Yii清理缓存的实现方法
Nov 10 PHP
PHP获取表单数据与HTML嵌入PHP脚本的实现
Feb 09 PHP
老生常谈文本文件和二进制文件的区别
Feb 27 PHP
老生常谈PHP面向对象之注册表模式
May 26 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 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
叶罗丽:为什么大家对颜冰这对CP非常关心,却对金茉两人十分冷漠
2020/03/17 国漫
php删除数组中重复元素的方法
2015/12/22 PHP
详解WordPress中创建和添加过滤器的相关PHP函数
2015/12/29 PHP
php中二分法查找算法实例分析
2016/09/22 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
2016/09/23 PHP
PHP使用SWOOLE扩展实现定时同步 MySQL 数据
2017/04/09 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
php数组和链表的区别总结
2019/09/20 PHP
js自动生成对象的属性示例代码
2013/10/28 Javascript
js确认删除对话框效果的示例代码
2014/02/20 Javascript
解决前端跨域问题方案汇总
2016/11/20 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
2017/02/19 Javascript
基于vue 实现token验证的实例代码
2017/12/14 Javascript
Angular实现搜索框及价格上下限功能
2018/01/19 Javascript
angular1配合gulp和bower的使用教程
2018/01/19 Javascript
Vue请求JSON Server服务器数据的实现方法
2018/11/02 Javascript
vue-router两种模式区别及使用注意事项详解
2019/08/01 Javascript
Python备份Mysql脚本
2008/08/11 Python
python简单程序读取串口信息的方法
2015/03/13 Python
python3使用SMTP发送简单文本邮件
2018/06/19 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
Django自带的加密算法及加密模块详解
2019/12/03 Python
python GUI库图形界面开发之PyQt5打印控件QPrinter详细使用方法与实例
2020/02/28 Python
python虚拟环境模块venv使用及示例
2020/03/04 Python
python爬虫beautifulsoup解析html方法
2020/12/07 Python
纯CSS实现颜色渐变效果(包含环形渐变、线性渐变、彩虹效果等)
2014/05/07 HTML / CSS
html5响应式开发自动计算fontSize的方法
2020/01/13 HTML / CSS
Lookfantastic法国官网:英国知名美妆购物网站
2017/10/28 全球购物
澳大利亚二手奢侈品网站:Modsie
2019/09/23 全球购物
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
委托书的样本
2015/01/28 职场文书
秦兵马俑导游词
2015/02/02 职场文书
无保留意见审计报告
2015/06/05 职场文书
学风建设主题班会
2015/08/17 职场文书
自考生自我评价
2019/06/21 职场文书