@djienbaev97

Как отправить ajax форму yii2?

Ребят помогите пытаюсь отправить форму без перезагрузки страницы, вот форма:
<?php $form = ActiveForm::begin();?>
                                        <?= $form->field($coment, 'text')->textarea(['class' => 'com-inp', 'name' => 'coment', 'row' => 4, 'placeholder' => 'Өз пікіріңізді жазыңыз...'])->label('', ['class' => 'com-title']); ?>
                                        <?php echo Html::submitButton('Send', ['class' => 'btn btn-success']);?>
                                        <?php ActiveForm::end();?>


скрипт файл:
$('form').on('beforeSubmit', function(){
    var data = $(this).serialize();
    $.ajax({
        url: '/site/coments',
        type: 'POST',
        data: data,
        success: function(res){
            console.log(res);
        },
        error: function(){
            alert('Error!');
        }
    });
    return false;
});


а контроллер:
public function actionComents(){
        $coment = new Coment();
        $com = $_POST['coment'];
        $coment->text = $com;
        $coment->user_id = Yii::$app->user->id;
        if($coment->save(false)){
            Yii::$app->response->redirect(Url::to('/'));
        }else{
            return $this->redirect(['/site?error=1']);
        }
    }


Вот так сохраняю в контроллере, и я бы хотел еще выводить на том же странице сохраненные данные без перезагрузки. Ну крч тут комментарий отправляются и сразу должны отображаться, у меня без аякса работает с перезагрузкой
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы