IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

verrification avant envoi de formulaire


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2003
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 293
    Points : 132
    Points
    132
    Par défaut verrification avant envoi de formulaire
    Bonjour , j'ai un formulaire que j'envoie par email je fais une verrification sur le formulaire pour savoir si les champs obligatoires sont remplis

    voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <script type="text/javascript">
    <!--
    function CheckInput() {
     if((document.formulaire_envoi_info_ens.nom.value == "") || (document.formulaire_envoi_info_ens.telephone.value == "") || (document.formulaire_envoi_info_ens.email.value == ""))
     {
        alert("Veuillez remplir les champs obligatoires (*) !");
     
            return false;
     }
      return true;
    }
    //-->
    </script>
    cette fonction javascript est appellé grace au on submit de mon formulaire dont voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
      <form name="formulaire_envoi_info_ens" action="envoi_info_ens_lum.php" method="post" onSubmit="return CheckInput();">
          <input name="check_devis" type="checkbox"  style="position:absolute; margin-left:212px; ">
         <span style="position:absolute; margin-left:233px; font-family:verdana; font-size:13px;">Je souhaite recevoir un devis</span></span>
          <br>
          <input name="check_avant_projet" type="checkbox"  style="position:absolute; margin-left:212px; ">
          <span style="position:absolute; margin-left:233px; font-family:verdana; font-size:13px;">Je souhaite recevoir un avant projet</span>
     <br><br>
     <span style="position:absolute; margin-left:212px; font-family:verdana; font-size:13px;">Veuillez me contacter :</span>
     <table width="30%" border="0" style="position:absolute; margin-top:35px; margin-left:212px;">
      <tr>
        <td><span class="Style8">Nom *</span></td>
        <td><input name="nom" type="text" size="35"></td>
      </tr>
      <tr>
        <td><span class="Style8">Tél. *</span></td>
        <td><input name="telephone" type="text" size="35"></td>
      </tr>
      <tr>
        <td><span class="Style8">Email *</span></td>
        <td><input name="email" type="text" size="35"></td>
      </tr>
      <tr>
        <td><span class="Style8">Message</span></td>
        <td><textarea name="message" cols="30" rows="8"></textarea></td>
      </tr>
    </table>
    <br>
    <table width="20%" border="0" style="position:absolute; margin-top:260px; margin-left:310px;">
      <tr>
        <td><input name="bouton_envoyer" type="submit" value="Envoyer" style="font-family:Verdana;"></td>
        <td><input name="bouton_initialiser" type="reset" value="Initialiser"  style="font-family:Verdana;"></td>
      </tr>
    </table>
    </form>
    le problème c'est que quand je clique sur mon bouton envoyer ca verrifie mon formulaire et puis envoie le mail

    le problème est que si les champs sont pas remplis, ca me dit "tous les champs sont bien remplis " donc cela est bon mais ca envoie l'email quand meme

    ce que je voudrais c'est que si les champs sont pas remplis ca n'envoie pas le formulaire

    une aide serait le bienvenue

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    telle qu'elle est ta fonction te renverra toujours true
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function CheckInput() {
     if((document.formulaire_envoi_info_ens.nom.value == "") || (document.formulaire_envoi_info_ens.telephone.value == "") || (document.formulaire_envoi_info_ens.email.value == ""))
     {
        alert("Veuillez remplir les champs obligatoires (*) !");
     
            return false;
     }else{
        return true;
     }
    }
    Plusieurs return dans une fonction ! mon prof d'algo s'arracherait les cheveux si son grand age ne s'en était pas charger

    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function CheckInput() {
     test=true;
     if((document.formulaire_envoi_info_ens.nom.value == "") || (document.formulaire_envoi_info_ens.telephone.value == "") || (document.formulaire_envoi_info_ens.email.value == ""))
     {
        alert("Veuillez remplir les champs obligatoires (*) !");
     
            test=false;
     }
      return test;
    }

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    je crois également que tu as moyen de faire un break :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      alert("Veuillez remplir les champs obligatoires (*) !");       
      return false; 
      break;
    mais à confirmer...

  4. #4
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    euh je tiens quand meme a preciser que quand js croise un return tu sort de la methode.

    le break ne sera jamais exécuté.

    et sa methode ne retournera pas tout le temps true puisque dans le cas ou c est false on sort.

    le probleme doit plutot se poser sur sa manière de récupérer les données.

    au lieu de faire des machin.truc.value, met des id et fais des getElementById

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    633
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 633
    Points : 721
    Points
    721
    Par défaut
    J'avais jamais remarqué ça n'effectuant qu'un return en fin de fonction. c'est bon a savoir.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    regarde plutot du coté de switch pour les vérification plutot que d'enfiler les ||

Discussions similaires

  1. [IP-2007] Tester BDD avant envoi de formulaire
    Par saxophtrion dans le forum InfoPath
    Réponses: 2
    Dernier message: 24/04/2012, 10h48
  2. [CKEditor] Tester si le champ est vide avant envoi du formulaire
    Par Xrris dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 17/04/2009, 11h59
  3. Insérer une valeur dans value avant envoi du formulaire
    Par delma dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/02/2008, 15h07
  4. [debutant] Test avant envoi de formulaire
    Par pierre50 dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 14/01/2008, 17h27
  5. [POO] Vérification d'un formulaire avant envoi
    Par KibitO dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 07/11/2005, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo