Как я могу заменить форму текстом при отправке формы? - PullRequest
0 голосов
/ 15 декабря 2010

Я хочу, чтобы моя форма исчезла, когда кто-то отправляет ее (и она проходит всю проверку ошибок) и текст заменяет то, где он был, и говорит что-то вроде «Спасибо, письмо с подтверждением отправлено»

Какими способами я смогу это сделать?

У меня есть форма, которая работает, проверяет ошибки и все работает, все, что мне нужно сделать, это заставить ее исчезнуть, когда пользователь нажимает кнопку отправить.

Я использую php, Спасибо!

Ответы [ 3 ]

0 голосов
/ 15 декабря 2010

вам нужно будет использовать Javascript для:
1.) отправьте форму через AJAX,
2.) изменить содержимое элемента, удерживающего форму

<div id='myForm_container'>
    <form id='myForm'>
         <input id="name" name="name">
         <input id="email" name="email">
        <input type=submit id='mySubmit'>
    </form>
</div>

<script>
    $('#mySubmit').click(function(){
        //do your validation and if passes:
        $.post("form_submit.php", { name: $('#name').val(), email: $('#email').val()},
        function(data){
            $('#myForm_container').html(data);
        });
    });
</script>
0 голосов
/ 15 декабря 2010

Я НЕ проверял форму на http://www.sligroup.ca/contact_us.php, потому что я не хочу посылать им бессмысленное сообщение.

Все, что вам нужно сделать, - завернуть ту часть сценария, которая выводит формы htmlисточник в pif-блоке проверяет, правильно ли была передана форма.Не требуется JavaScript.

Простой пример:

$validFormSubmitted = validateform();
...
if(!$validFormSubmitted){
echo $formText;
}

[РЕДАКТИРОВАТЬ: это перезагрузит страницу без формы.Вы сказали, что хотите решение PHP, но если вы не хотите перезагружать страницу, вам придется использовать AJAX]

0 голосов
/ 15 декабря 2010
var td = document.forms.contact.parentNode
if (td.innerHTML) {
    td.innerHTML = "your message"
} else {
    td.textContent = "your message"
}

Если вы отправляете, используя AJAX, поставьте его в конце. Если вы используете базовые формы, поместите его как функцию в атрибут onSubmit вашей формы

Пример:

<form onSubmit="emptyForm();"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...