Задать вопрос
Ответы пользователя по тегу Yii
  • Как исправить ошибку в ajax запросе?

    @walder Автор вопроса
    Немного переделал, теперь работает, но кнопка по сути не нужна, при переключении радиобоксов сразу сохраняется значение в базу. Как сделать чтобы сохранялось после нажатия на сабмит? Что исправить?
    Теперь работает без js.

    View
    <?php $form = ActiveForm::begin([
        'id' => 'formTest',
        'method' => 'POST',
        'enableAjaxValidation' => true,
        'type' => ActiveForm::TYPE_HORIZONTAL,
        'formConfig' => [
            'showErrors' => true,
            'labelSpan' => 1,
            'deviceSize' => ActiveForm::SIZE_SMALL,
        ]
    ]);
    ?>
    
    <?= $form->field($model, 'Name')->radioList($list)->label(false); ?>
    
    <?php ActiveForm::end(); ?>

    Controller
    public function actionMessage($id)
    {
        $model = Orders::findOne($id);
    
        if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
    
            if ($model->save()) {
                return $this->renderAjax('message', [
                    'model'=>$model,
                ]);
            } else {
                Yii::$app->response->format = Response::FORMAT_JSON;
                return ActiveForm::validate($model);
            }
        }
    
        return $this->renderAjax('message', [
            'model'=>$model,
        ]);
    }
    Ответ написан
    Комментировать