Ребят помогите пытаюсь отправить форму без перезагрузки страницы, вот форма:
<?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']);
}
}
Вот так сохраняю в контроллере, и я бы хотел еще выводить на том же странице сохраненные данные без перезагрузки. Ну крч тут комментарий отправляются и сразу должны отображаться, у меня без аякса работает с перезагрузкой