Yii2 - 通过 GET 请求批量复选框

问题描述 投票:0回答:1

我在 gridview Yii2 中有一个复选框,如下所示:

[
    'class' => 'kartik\grid\CheckboxColumn',
    'width' => '20px',
    'checkboxOptions' => function ($model, $key, $index, $column) {
        return [
            'value' => trim($model->vessel),
        ];
    }

],

然后要获取 yii2 中的所有值复选框,我使用此按钮:

Html::a('<i class="glyphicon glyphicon-print"></i>&nbsp; Print All',
                        ["print-all-based-date"],
                        [
                            "class" => "btn btn-success",
                            'role' => 'modal-remote-bulk',

                        ])

但是当我的控制器处理该动作时,

public function actionPrintAllBasedTanggal()
{
    $request = Yii::$app->request;
    $get = $request->get();
    print_r($get);
    die();

我明白了:

Array
(
   [r] => iwwi/incoming/print-all-based-tanggal
   [KMTC_HOCHIMINH,OOCL_NAGOYA] => 
   [_] => 1495123320863
)

这是什么意思

[KMTC_HOCHIMINH,OOCL_NAGOYA] => 

我签入html,复选框名为

selection[]

我需要这个:

KMTC_HOCHIMINH,OOCL_NAGOYA
才能继续我的应用程序。

checkbox yii2
1个回答
0
投票

也许你可以使用 jquery 来解决。 例子 :

   $(document).on('click','#ceklist_all',function(){

    if ($(this).is(':checked')) {
     
        $('.ceklist_child').attr('checked',true);
        your_variable = [];
        $('.ceklist_child:checked').map(function(key,val) {
            if(this.checked) {
               your_variable[key] = this.value;
            }
        }).get();
    }
});

所以,。您可以使用 your_variable 并使用 ajax 进行提交..

 $.ajax({
                type: 'get',
                url: your_url,
                data: {
                    'your_variabel_to_post' : your_variable
                },
                success: function(data){
                   // success function
                },
                error: function(data){
                    if(data.responseText)
                        alert(data.responseText);
                },
            });

CMIIW,。 只是可选的解决方案。呵呵

© www.soinside.com 2019 - 2024. All rights reserved.