Yii2 Grdiview复选框列通过表格提交

时间:2017-05-07 08:07:15

标签: checkbox yii2

在我的yii2项目中,我有一个带有简单复选框列的gridview。

<?= 
GridView::widget([
    'id' => 'gridwithcheckboxes',
    'dataProvider' => $dataProvider,
    'columns' => [
        ['attribute' => 'a', 'value' => 'tabfora.a'],
        ['attribute' => 'b', 'value' => 'tabforb.b'],
        'user',
        'mobile',
        'description',
        ['class' => 'yii\grid\CheckboxColumn'],
    ],
]);

&GT;

我知道我可以通过这个js帮助器获取复选框值:

var keys = $('#gridwithcheckboxes').yiiGridView('getSelectedRows');

是否有方法使用javascript将表单提交传递给控制器​​操作?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

我使用gridview小部件,包括常规html表单标签中的复选框列,通过$_POST传递选定的ID。您需要使用value =Yii::$app->request->getCsrfToken()隐藏输入,否则无效。在控制器中,$_POST['selection]是所选id的数组。

答案 1 :(得分:0)

通过表单完成此操作的唯一方法实际上是使用表格包装gridview。表单应在gridview之前开始,并在gridview之后结束。您可以有一个或两个提交按钮。 这并不意味着您可以随意使用ajax。