提交表单后的Javascript

时间:2010-11-04 18:25:42

标签: javascript

我绝对不是javascript大师,所以这可能是一个非常简单的问题。

如何用“谢谢!”替换表单。我的意思是,在你按下提交后我希望用“谢谢你”替换表格。或“发生错误!”?

提前感谢您的帮助:D

编辑:

这是处理。它位于

之前
if(isset($_POST['sendmail'])) {

    //Data from the form
    $name = trim(strip_tags($_POST['name']));
    $email = trim(strip_tags($_POST['email']));
    $message = trim(strip_tags($_POST['message']));


    //Data set by the script
    $subject = 'Mail fra ';
    $subject .= $name;
    $subject .= ' via lindegaardsign.dk';
    $to = 'nf.denmark@gmail.com';

    if(validate_email($email) && !empty($email) && !empty($message)) {

        $headers = "From: $email\r\n";
        $headers .= "Content-type: text/html\r\n";

        //Send mail
        if(mail($to , $subject , $message , $headers)) {
            $message = '<div class="contactresponse">Tak for din henvendelse. Vi besvarer den hurtigst muligt.</div>';  
        } else {
            $message = '<div class="contactresponse">Der skete fejl ved afsendelsen af din henvendelse.</div>';
        }
    } else {
            $message = '<div class="contactresponse">Husk at udfylde email, meddelelse.</div>';
    }

}

这就是它自己的形式。

    <article class="con460">
    <header><h2>Hurtig kontakt</h2></header>
    <section id="quick_contact_form">
        <p>
            Nedenfor ser du hvor, og hvornår vi udstiller vores nisser og dekorationer. Kig forbi og mød os til en snak om de hjemmelavede produkter.
        </p>
        <?php if(isset($message)) :?>
            <?php echo $message; ?>
        <?php else: ?>
        <form class="contact" id="contact_form" action="start.php" method="post">
            <label>Navn:</label>
            <input type="text" name="name" value="">
            <label>Email:</label>
            <input type="text" name="email" value="">
            <label>Besked:</label>
            <textarea name="message"></textarea>
            <input type="reset" name="reset" value="Annuller">
            <input type="submit" name="sendmail" id="sendmail" value="Send">
        </form>
        <?php endif; ?>
    </section>      
</article>

我希望这会有所帮助。

1 个答案:

答案 0 :(得分:2)

您无法使用JavaScript执行此操作。您必须在服务器端处理已发送的表单,并将相应的消息发送回客户端。

一种可能性是使用XMLHttpRequest将表单的内容发送到服务器来增强您的表单,并让回调函数用(成功或失败)消息替换表单。也就是说,我强烈建议使用前一个过程,只有在前者正常工作后才能使用这种处理扩展(并且使用XMLHttpRequest s不适合初学者)。这样,如果JavaScript不可用,您将确保表单仍然有效。