Задать вопрос
@Andrey_87

Почему форма не перезагружается после отправки запроса post через ajax?

Есть форма (подгружена в таб с помощью метода load jquery)

<button type="submit" form="form-filtergroup" data-toggle="tooltip" title="" class="btn btn-primary"><i class="fa fa-save"></i></button>

<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data" id="form-filtergroup" class="form-horizontal">
	<div class="form-group required">
	<label class="col-sm-2 control-label" for="input-name"><?php echo $entry_name; ?></label>
		<div class="col-sm-10">
			<input type="text" name="<?php echo $name ?>" value="" placeholder="<?php echo $name ?>" id="input-name" class="form-control" />
		</div>
	</div>
	<div class="form-group required">
	<label class="col-sm-2 control-label" for="input-keyword"><?php echo $entry_keyword; ?></label>
		<div class="col-sm-10">
			<input type="text" name="<?php echo $keyword ?>" value="" placeholder="<?php echo $keyword ?>" id="input-keyword" class="form-control" />
		</div>
	</div>
</form>


Ajax запрос на кнопку "сохранить"

<script>
$("#form-filtergroup").submit(function(e) {
    e.preventDefault();
	$.ajax({
		url:"index.php?route=catalog/SMfilter_opt/add&token=<?php echo $token; ?>",
		type:"post",
		data:{filter_group_id: 0},
		dataType:"json",
		success:function(a){
			console.log('111');
		},
		error: function (e) {
		}
	})
  });
</script>


После нажатия "сохранить" запрос отправляется, но форма не перезружается.
Мне нужно чтобы перезагрузилась форма и показались ошибки по обязательным полям, логика которых прописана в php. Но этого не происходит. Хотя если грузить форму ту же без ajax, то все работает.
  • Вопрос задан
  • 71 просмотр
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
@notlive
Все верно. Для начала нужно хотя бы прочитать что такое аякс и как это работает.
Википедия...
AJAX, Ajax (ˈeɪdʒæks, от англ. Asynchronous Javascript and XML — «асинхронный JavaScript и XML») — подход к построению интерактивных пользовательских интерфейсов веб-приложений, заключающийся в «фоновом» обмене данными браузера с веб-сервером. В результате при обновлении данных веб-страница не перезагружается полностью, и веб-приложения становятся быстрее и удобнее.

Тут 3 выхода из твоей ситуации, либо ты используешь только php, либо ты используешь ajax + php, но проверку на заполнение полей реализовываешь на стороне пользователя средствами javascripts, либо ты реализовываешь проверку отправки данных в php, но возвращаешь допустим код ошибки, javascripts в свою очередь выводит на основание кода ошибки сообщение о заполнение полей.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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