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

Как исключить перезагрузку страницы при передаче параметра POST?

Всем привет! Есть в интернет-магазине корзина разбитая на 2 вкладки.
В первой пользователь вводит телефон в input и при нажатии на кнопку подтвердить - получает это значение в input поле второй вкладки с переключением на эту вкладку.

В реальном проекте (1 вариант) при нажатии на кнопку подтвердить значение поля я получаю, вторая вкладка буквально на мгновение переключается, но срабатывает перезагрузка страницы и открывается первая вкладка.

Как исключить перезагрузку страницы или переключаться на вторую вкладку по кнопке подтвердить?

Во втором варианте пробую все сделать через ajax, страница не перезагружается, значение запоминается визуально в поле, но ничего не приходит в $_POST['billing_phone_visible'], как в первом случае с перезагрузкой страницы.
Но, внутри ajax значение поля изменилось
success: function() {
		       console.log($('#billing_phone_visible').val());
	        }


Почему так?

Задача упрощена, поэтому, пожалуйста, не стоит задавать вопросы для чего мне нужна такая реализация

Код ниже:
  • Вопрос задан
  • 2086 просмотров
Подписаться 3 Простой 2 комментария
Ответ пользователя profesor08 К ответам на вопрос (4)
profesor08
@profesor08 Куратор тега JavaScript
Это все у тебя форма, а раз так, то нажатии кнопки и так отправляет данные формы. Обновление страницы происходит при отправке формы, значит тебе надо отловить событие отправки формы и прервать его.

form.addEventListener("submit", e => {
  e.preventDefault();
  // тут делай все свои дела, собирай данные и делай с ними что хочешь.
})
Ответ написан