2010-11-04 12 views
1

Je ne suis absolument pas un gourou javascript alors cela pourrait être une question très très simple.Javascript après la soumission du formulaire

Comment remplacer un formulaire avec un "merci!". Ce que je veux dire est, après avoir appuyé sur Soumettre, je veux que le formulaire soit remplacé par "Merci!" ou "Une erreur est survenue!"?

avance merci pour l'aide: D

EDIT:

est ici le traitement. Il est situé avant le

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 = '[email protected]'; 

    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>'; 
    } 

} 

et c'est la forme elle-même.

<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> 

J'espère que cela aide un peu.

Répondre

2

Vous ne pouvez pas le faire en utilisant JavaScript. Vous devrez traiter le formulaire envoyé côté serveur et renvoyer un message approprié au client.

Une possibilité consiste à améliorer votre formulaire avec un XMLHttpRequest en envoyant le contenu du formulaire au serveur et laissez la fonction de rappel remplacer le formulaire par un message (succès ou échec). Cela dit, je recommande fortement d'utiliser l'ancien processus de toute façon et de l'étendre seulement avec ce genre de traitement une fois que le premier fonctionne correctement (et en utilisant XMLHttpRequest s n'est pas quelque chose pour les débutants). De cette façon, vous vous assurerez que votre formulaire fonctionne toujours si JavaScript n'est pas disponible.

Questions connexes