У меня есть страница, на которой пользователь может написать комментарий и опубликовать его по простой форме. Я стараюсь, без успеха, сделать это с помощью ajax, используя веточку. Я могу отправить запрос ajax на свой контроллер без проблем, и комментарий сохраняется в моей базе данных. Моя проблема состоит в том, чтобы перезагрузить часть моего шаблона ветки, не обновляя всю страницу.Обновить данные, не обновляя страницу с помощью Ajax и Twig
Возвращение моего контроллера:
return $app['twig']->render('@views_suivi/suivi_affaire.html.twig', array('cache' => false,
'auto_reload' => true,
'affaire' => $affaire,
'comments' => $comments
));
$ комментарии countains все комментарии к статье. Когда я отправляю запрос ajax, мой комментарий таблицы обновляется. Есть ли способ обновить переменную $ comments и отправить ее на мою ветку без обновления всей страницы?
Edit: извините, вот код моего контроллера (он просто вставить комментарий в моем дб)
function addCommentAjax(Application $app, Request $request)
{
$cmt = new CommentaireQueries($app);
$postParams = $app["request"]->request->all();
//var_dump($postParams);
if(isset($postParams['files'])) unset($postParams['files']);
return !empty($postParams) ? $cmt->insertCommentAffaire($app,$postParams) : false;
}
Ajax: 'AjoutCommentaire' является маршрут к моему контроллеру addCommentAjax
$(document).ready(function() {
$('form').on('submit',function(e){
e.preventDefault();
$.ajax({
type : "POST",
url : "AjoutCommentaire",
data: $(this).serialize(),
success : function() {
alert('success');
}
});
});
});
Моя форма:
<form role="form" method="POST">
<div class="form-group">
<textarea class="summernote" id="contents" rows="10" name="comment"></textarea>
</div>
<input type="hidden" name="phase" value="1" />
<input type="hidden" name="id_affaire" value="{{ affaire.id }}" />
<center><button type="submit" class="btn btn-link btn-block">Envoyer</button></center>
</form>
В принципе, я просто хочу добавить комментарий, не обновляя страницу.
Спасибо!
Всегда писать полный код, чтобы остальные находят решение –
не ясно, все, что конкретная проблема. Мы не знаем, что делает ваш шаблон, или когда и как вы хотите, чтобы обновления происходили. Вопрос слишком широк – charlietfl