这是checkboxOptions前选框的用法

use yii\grid\GridView;

$this->registerJs("

$('#selection_all').click(function(){

$('input[name=selection_all]').click();

});

$('#delete_select').click(function(){

var selection = $('#w0').yiiGridView('getSelectedRows');

if(selection.length==0){

alert('未选中');

return false;

}else{

if(confirm('您确定要删除吗?')==true){

$.post('".Url::to(['product-base/delete-select'])."', {selection:selection});

location=location;

}else{

location=location;

}

}

});

$('#up_select').click(function(){

var selection = $('#w0').yiiGridView('getSelectedRows');

if(selection.length==0){

alert('未选中');

return false;

}else{

$.post('".Url::to(['product-base/status-select'])."', {selection:selection,status:1});

location=location;

}

});

$('#down_select').click(function(){

var selection = $('#w0').yiiGridView('getSelectedRows');

if(selection.length==0){

alert('未选中');

return false;

}else{

$.post('".Url::to(['product-base/status-select'])."', {selection:selection,status:0});

location=location;

}

});

", \yii\web\View::POS_END);

<?= GridView::widget([

'layout' => "{items}<div class='row'>

<div class='btn-group col-md-3'>

<button class='btn btn-warning' id='selection_all'>全选</button>

<button class='btn btn-default' id='up_select'>上架</button>

<button class='btn btn-default' id='down_select'>下架</button>

<button class='btn btn-default' id='delete_select'>删除</button>

</div>

<div class='col-md-7' style='margin-top:-20px'>

{pager}</div>

</div>

",

'dataProvider' => $dataProvider,

'columns' => [

['class' => 'yii\grid\SerialColumn'],

['class' => 'yii\grid\CheckboxColumn',

'checkboxOptions' => function($model, $key, $index, $column) {

return ['value' => $model->id];

}],

['class' => 'yii\grid\ActionColumn'],

[

'label' => '更多操作',

'format'=>'raw',

'value' => function($model){

return Html::a('店铺商品列表', ['product/index','id' => $model->id], ['title' => '店铺商品列表']);

}

],

],

]); ?>

Controller中的写法:

public function actionDeleteSelect(){

//删除selection

$selection = Yii::$app->request->post('selection');

ProductBase::deleteAll(['id'=>$selection]);

}

//改变状态

public function actionStatusSelect(){

//找到选中的

$selection = Yii::$app->request->post('selection');

//找到post过来的

$status = Yii::$app->request->post('status');

ProductBase::updateAll(['status'=>$status],['id'=>$selection]);

}

YIi2中checkboxOptions前选框的用法的更多相关文章

  1. jQuery+SpringMVC中的复选框选择与传值

    一.checkbox选择 在jQuery中,选中checkbox通用的两种方式: $("#cb1").attr("checked","checked& ...

  2. 在word中做复选框打对勾钩

    在word中做复选框打对勾钩 现在终于搞明白正确的操作方法 一.你在word里输入2610,按alt+X就能出 空checkbox 你在word里输入2611,按alt+X就能出 打了勾的checkb ...

  3. nodetree中 前面复选框禁用插件

    nodetree中 前面复选框的去掉插件 extendTreeCheck.js /** * tree方法扩展 * 作者:小雪转中雪 */ $.extend($.fn.tree.methods, { / ...

  4. QTableView中嵌入复选框CheckBox 的四种方法总结

    搜索了一下,QTableView中嵌入复选框CheckBox方法有四种: 第一种不能之前显示,必须双击/选中后才能显示,不适用. 第二种比较简单,通常用这种方法. 第三种只适合静态显示静态数据用 第四 ...

  5. python QQTableView中嵌入复选框CheckBox四种方法

    搜索了一下,QTableView中嵌入复选框CheckBox方法有四种: 第一种不能之前显示,必须双击/选中后才能显示,不适用. 第二种比较简单,通常用这种方法. 第三种只适合静态显示静态数据用 第四 ...

  6. tkinter中checkbutton多选框控件和variable用法(六)

    checkbutton控件 简单的实现多选: import tkinter wuya = tkinter.Tk() wuya.title("wuya") wuya.geometry ...

  7. 如何在select下拉列表中添加复选框?

    近来在给一个公司做考试系统的项目,遇到的问题不少,但其中的几个让我对表单的使用颇为感兴趣,前端程序员都知道,下拉列表有select标签,复选框有checkbox,但是两者合在一起却少有人去研究,当时接 ...

  8. 在php中验证复选框

    PHP接收多个同名复选框信息不像ASP那样自动转换成为数组,这给使用带来了一定不便.但是还是有解决办法的,就是利用javascript做一下预处理.多个同名复选框在javascript中还是以数组的形 ...

  9. DEV控件中GridView中的复选框与CheckBox实现联动的全选功能

    最初的界面图如图1-1(全选框ID: cb_checkall  DEV控件名称:gcCon ): 要实现的功能如下图(1-2  1-3  1-4)及代码所示: 图1-2 图1-3 图1-4 O(∩_∩ ...

随机推荐

  1. postgresql中rank() over, dense_rank(), row_number() 的用法和区别

  2. VC连接SQLite3的方法(MFC封装类)

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,支持跨平台,操作简单,能够使用很多语言直接创建数据库.官方网站:www.sqlite.org 在VC环境下编写连接SQLite的 ...

  3. ALAsset和ALAssetRepresentation详解

    ALAsset类代表相册中的每个资源文件,可以通过它获取资源文件的相关信息还能修改和新建资源文件,ALAssetRepresentation类代表相册中每个资源文件的详细信息,可以通过它获取资源的大小 ...

  4. (转)图文详解MyEclipse中新建Maven webapp项目的步骤

    转:https://blog.csdn.net/ClementAD/article/details/46592557 MyEclipse中创建新的Maven项目(webapp目录结构)过程如下:   ...

  5. 原生Android项目里嵌入Cordova

    Android H5混合开发():原生Android项目里嵌入Cordova 如果安卓项目已经存在了,那么如何使用Cordova做混合开发? 方案1(适用于插件会持续增加或变化的项目): 新建Cord ...

  6. C++——运行时类型识别RTTI

    1.实现方式 typeid运算符,返回表达式的类型 dynamic_cast运算符,基类的指针或引用安全地转换成派生类的指针或引用 2.适用于:使用基类的指针或引用执行派生类的操作,且该操作不是虚函数 ...

  7. 【C++第一个Demo】---控制台RPG游戏4【角色系统】

    [角色基类] #ifndef _ROLE_H_ #define _ROLE_H_ #include<list> #include<vector> #include " ...

  8. C++构造函数异常(二)

    继续上一篇文章提到的构造异常话题,下面继续谈另外两个场景,即多继承构造异常,以及智能指针构造异常 第3:对多继承当中,某个基类构造异常,而其他基类已构造成功,则构造成功的基类不会析构,由编译器负责回收 ...

  9. Django框架(十八)—— auth框架:用户登录、注册、认证

    目录 auth模块 一.什么是author模块 二.auth模块的使用 1.创建超级用户(create_superuser()) 2.验证用户(authenticate()) 3.登录用户(login ...

  10. Hibernate入门教程(一):入门示例(Myeclipse)

    ●项目结构 ●本项目所用Hibernate版本为5.4.5.Final,导入jar只需lib目录下的required和MySQL所需的jar驱动 1.导入相关jar包(配置构建路径) 说明:本人已将所 ...