Передача содержимого поля формы в то же поле формы на новой странице - PullRequest
1 голос
/ 08 февраля 2010

У меня есть поле формы для адреса "E-mail", и я хочу создать небольшую форму в верхней части каждой страницы, которая имеет поле для "адреса электронной почты", а затем кнопку регистрации, которая берет вас на страницу, чтобы заполнить подробную форму для подписки на рассылку. Две вещи, с которыми у меня проблемы:

  • Как передать данные, введенные в форму, на адрес электронной почты на специальной странице "Списка рассылки"?
  • Как перенаправить пользователя на отдельную страницу «Списка рассылки», когда он нажимает «Отправить»?

Ответы [ 2 ]

1 голос
/ 08 февраля 2010

Если вы готовы использовать javascript для передачи данных, почему бы не сделать еще один шаг и получить одну страницу для вашей функциональности.

А с помощью javascript вы показываете или скрываете форму, которую хочет видеть пользователь.
Или даже вы создаете одну форму и показываете или скрываете некоторые дополнительные поля между двумя состояниями.

В этих конфигурациях считывание значений на одной странице очень просто.
И пользовательский опыт будет лучше.

Редактировать (после отчаянного комментария;)

В ТЕЛЕ вашей страницы установите такую ​​форму:

<form action="javascript:void(0)" >
    <input type="text" name="email" />
    <input type="submit" value="sign up!" onclick="signUp(this.form)"/>
</form>
<script>
    function signUp(form){
        window.location.href = 'signUp.html?email=' + form.email.value;
    }
</script>    

А в ТЕЛЕ страницы регистрации:

<form id="frm" action="javascript:void(0)" >
    <input type="text" />
    <input type="text" name="email" />
    <input type="submit" value="register!" onclick="register(this.form)"/>
</form>

<script>
    function urlParam(name, w){
        w = w || window;
        var rx = new RegExp('[\&|\?]'+name+'=([^\&\#]+)');
        var val = w.location.href.match(rx);
        return !val ? '':val[1];
    }

    var frm = document.getElementById('frm');
    frm.email.value = urlParam('email');
</script>

При нажатии кнопки первой формы URL-адрес создается с параметром на странице регистрации.

Страница регистрации загружается, и затем мы получаем ссылку на форму, читаем значение URL с помощью функции "urlParam" и помещаем значение в поле с именем "email"

0 голосов
/ 08 февраля 2010

Как передать данные, введенные в форму, на адрес электронной почты на специальной странице "Списка рассылки"?

Используйте правильный атрибут name для электронного письма input.

Как перенаправить пользователя на отдельную страницу «Списка рассылки», когда он нажимает «Отправить»?

Вы можете определить это, используя атрибут action элемента form:

<form action="mailing-list.php" action="post">
 …
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...