Как получить значения из checkboxlist в yii2?

Пользователь

от elda , в категории: PHP , год назад

Как получить значения из checkboxlist в yii2?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jose , год назад

@elda 

Для получения выбранных значений из CheckBoxList в Yii2 можно использовать следующий код:

  1. Создайте модель формы, которая будет использоваться для отправки данных из формы в контроллер. В модели формы нужно объявить свойство, которое будет хранить значения CheckBoxList.
1
2
3
4
5
6
7
8
namespace appmodels;

use yiiaseModel;

class MyForm extends Model
{
    public $myCheckboxList;
}


  1. В представлении (view) создайте виджет CheckboxList, который будет отображаться на странице и позволит пользователю выбрать несколько значений. В этом примере используется массив $items, содержащий список элементов CheckBoxList.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<?php
use yiihelpersHtml;
use yiiwidgetsActiveForm;

$form = ActiveForm::begin();

echo $form->field($model, 'myCheckboxList')->checkboxList($items);

echo Html::submitButton('Submit', ['class' => 'btn btn-primary']);

ActiveForm::end();
?>


  1. В контроллере, который обрабатывает данные из формы, нужно получить значения CheckBoxList, выбранные пользователем. Для этого можно использовать метод Yii::$app->request->post(), который возвращает массив значений, отправленных из формы.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
namespace appcontrollers;

use Yii;
use appmodelsMyForm;

class MyController extends yiiwebController
{
    public function actionIndex()
    {
        $model = new MyForm();

        if ($model->load(Yii::$app->request->post()) && $model->validate()) {
            $selectedItems = $model->myCheckboxList;
            // Обработка выбранных значений
        }

        return $this->render('index', [
            'model' => $model,
        ]);
    }
}


В результате выполнения этого кода, в переменной $selectedItems будут храниться выбранные значения CheckBoxList.

Пользователь

от stephania , 4 месяца назад

@elda 

Надеюсь, это поможет вам получить значения из CheckBoxList в Yii2.