mk3mk
@mk3mk
занимаюсь вёрсткой (иногда)

Как вставить введённый email в форму на странице редиректа?

Всем привет!
Есть форма на странице-1, в которой user забивает имя, телефон и Email.
При отправке формы его перебрасывает на страницу-2, там есть поле Email.
В это поле должен автоматически вставиться Email, который user вбил в форму.
Вот код формы и код JavaScript, который перебрасывает на страницу-2.
Но как нам получить поле с Email на странице-2 и вставить туда введенный Email ?
Я с помощью инструментов разработчика узнал id этого поля Email #signup-email
Но в него не вставляется наш вбитый Email.
Переадресацию на страницу-2 делаю с помощью window.location.href

Как мы можем получить объекты на новой странице? На которую мы перешли.
Получить, т.е. взять input id="login-email" например , и изменить его стили, или вставить в него какой-то текст...

<div class="form-container">
    <form method='POST' action='https://app.syncrm.ru/web_forms/order'>
		<div class="d-flex flex-md-nowrap flex-wrap">
			<input id="inputName" type="text" name="name" placeholder="Имя" required>
			<input id="inputTel" type="tel" name="tel" placeholder="Телефон" required>
			<input id="inputMail" type="email" name="email" placeholder="E-mail" required>
		</div>
		<div class="checkbox-container widget-form-privacy">
			<div class="d-flex">
				<input id="i_agree2" type="checkbox" name="checkbox" required checked>
				<label for="i_agree2"> <span>Я даю согласие на обработку персональных данных, согласен на получение информационных рассылок и соглашаюсь c <a href="#" data-toggle="modal" data-target="#modal">политикой конфиденциальности.</a></span></label>
			</div>
		</div>
		<p class="form-success">Спасибо, ваша заявка отправлена!</p>
		<button id="submitButton" class="btn" type="submit">Оставить заявку</button>
	</form>
</div>

<script language="JavaScript"> 
let submitButton = document.querySelector('#submitButton');
let inputName = document.querySelector('#inputName');
let inputTel = document.querySelector('#inputTel');
let inputMail = document.querySelector('#inputMail');
let iAgree2 = document.querySelector('#i_agree2');
										    
										    
submitButton.onclick = function(){
      if(inputName.value != '' && inputTel.value != '' && inputMail.value != ''){
      window.location.href = "https://app.syncrm.ru/accounts/sign_up";
      let signupEmail = document.querySelector('#signup-email');
      signupEmail.value = inputMail.value;
 }
}
</script>
  • Вопрос задан
  • 61 просмотр
Пригласить эксперта
Ответы на вопрос 2
@EastJesus
Запишите почту в localStorage, потом берите это значение из хранилища и подставляйте в форму
На первой странице:
if(inputName.value != '' && inputTel.value != '' && inputMail.value != ''){
      localStorage.email = inputMail.value
      window.location.href = "https://app.syncrm.ru/accounts/sign_up";
}

На второй странице:
let signupEmail = document.querySelector('#signup-email');
      signupEmail.value = localStorage.email


А еще проверки на пустоту типа inputName.value != '' можно свести к такому:
if(inputName.value && inputTel.value && inputMail.value){}

Т.к. если строки пустые, такая проверка даст false и условие не выполнится
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы