GridView CheckboxColumn не отправляются данные форму в браузере Internet Explorer

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Alex_N
Сообщения: 67
Зарегистрирован: 2015.03.02, 21:20

GridView CheckboxColumn не отправляются данные форму в браузере Internet Explorer

Сообщение Alex_N » 2019.07.14, 16:35

Всем привет! Помогите пожалуйста. Почему то в IE значения чекбокса не передаются в ActiveForm. при нажатии на кнопку значения чекбокса отсутствуют в массиве POST. При этом в Firefox и Coogle Chrom такой код работает, данные передаются.

Код: Выделить всё

    <?php $form = ActiveForm::begin([
        'action' => ['index'],
        'id' => 'copy-products-form',
        'method' => 'post',
        'fieldConfig' => ['template' => '{label}{input}'],
        'enableClientValidation' => false,
    ]); ?>
    
    <?= $form->errorSummary($modelMoveProducts) ?>

    <?= Html::submitButton('Submit', [ 'class' => 'btn btn-primary']) ?>
    <?php ActiveForm::end(); ?>
  
    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
            'ID',     
            [
                'class' => 'yii\grid\CheckboxColumn',
                'checkboxOptions' => function ($model, $key, $index, $column){                 
                return ['form' => 'copy-products-form', 'value' => $model->PRODUCT_ID];
                
                }
            ],
        ],
    ]); ?>
Если GridView обернуть в ActiveForm, то данные передаются, но такой способ не подходит, т.к. нарушает работу поиска в GridView

Подскажите пожалуйста, как сделать так, чтобы в IE тоже работало?

Спасибо.

masson
Сообщения: 488
Зарегистрирован: 2012.07.03, 15:59

Re: GridView CheckboxColumn не отправляются данные форму в браузере Internet Explorer

Сообщение masson » 2019.07.15, 10:06

Перед отправкой формы собрать данные из грида методом var keys = $('#grid').yiiGridView('getSelectedRows');
и запихнуть их в форму.
Или аяксом данные отправлять.

Alex_N
Сообщения: 67
Зарегистрирован: 2015.03.02, 21:20

Re: GridView CheckboxColumn не отправляются данные форму в браузере Internet Explorer

Сообщение Alex_N » 2019.07.15, 10:56

masson писал(а):
2019.07.15, 10:06
Перед отправкой формы собрать данные из грида методом var keys = $('#grid').yiiGridView('getSelectedRows');
и запихнуть их в форму.
Или аяксом данные отправлять.
Добрый день. Да, так и сделал, собрал данные из грида методом var keys = $('#grid').yiiGridView('getSelectedRows') и запихнул все в форму при помощи js.

Как выяснилось, в настоящее время связь формы с полем по идентификатору не работает в IE11: http://htmlbook.ru/html/input/form

Спасибо.

Ответить