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 :

Test des champs vide d'un formulaire !


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 24
    Par d�faut Test des champs vide d'un formulaire !
    Bonjour � tous !

    Voici un fragment de 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
     
    <form method="POST" action="traiter_ajout.php" name="form_ajout_question" onsubmit="return verif_vides(form_ajout_question)">
        <table>				
    	<tr>
    	     <td>La question : </td><td><input type="text" name="question" /></td>
    	</tr>
     
    	<tr>
    	     <td>La bonne réponse : </td><td><input type="text" name="bonne_rep" /></td>
    	</tr>
     
    	<?php                                                                 $_SESSION['nbreponse']=$_GET['nb_reponse'];
                  for($i=0; $i<$_SESSION['nbreponse']; $i++ ){
                     $j=$i+1;
                     echo "<tr>";
                     echo "<td>Mauvaise réponse n°$j : </td>";
                     echo "<td><input type='text' name='mauvaise[".$j."]'></td>";
                     echo "</tr>";
                   }
            ?>
        </table>
        <input type="submit" name="questionnaire" value="Valider la question">
    </form>

    Et avec le code suivant en javascript, je m'assure que tous les champs soient remplis !

    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
    <script language="javascript" type text/javascript>
    function verif_vides(formulaire) {
     
    if(formulaire.question.value.length < 1) {
    alert('Le champ question doit-être rempli !');
    formulaire.question.focus();
    return false;
    }
     
    if(formulaire.bonne_rep.value.length < 1) {
    alert('Le champ bonne réponse doit-être rempli !');
    formulaire.bonne_rep.focus();
    return false;
    }
     
    if(formulaire.mauvaise[1].value.length < 1) {
    alert('Le champ mauvaise réponse n°1 doit-être rempli !');
    formulaire.mauvaise[1].focus();
    return false;
    }
     
    if(formulaire.mauvaise[2].value.length < 1) {
    alert('Le champ mauvaise réponse n°1 doit-être rempli !');
    formulaire.mauvaise[2].focus();
    return false;
    }
     
     
    return true;
    }
    </script>

    Le probl�me que je rencontre car je ne connais pas du tout le javascript, c'est que je n'arrive pas � tester mes variable "mauvaise[xxx]"!

    Sachant que leurs nombres varient : il y a au minimum mauvaise[1], et au maximum mauvaise[4].

    ex : des fois il ya aura les variables mauvaise[1] et mauvaise[2]
    et une autre fois, il y aura les variables mauvaise[1], mauvaise[2], mauvaise[3],...


    En fait le principe est que sur une premiere page l'utilisateur indique le nombre de champs "mauvaises r�ponses" il veut, et la page d'apr�s propose le formulaire.

    Et c'est ce formulaire que je souhaiterai tester !
    Ca marche pour les champs question et bonne reponse, mais pour les champs mauvaise r�ponse (mauvaise[xxx]) �a ne fonctionne pas (�a ignore qu'il soit vide), je ne vois pas comment faire.


    Merci pour votre aide et � bient�t !!!

  2. #2
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    Premi�re remarque:
    Adopte une syntaxe qui t'�viteras des probl�mes dans l'avenir




    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.fomrs['formulaire'].elements['mauvaise']
    ou
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.getElementsByName['mauvaise']

    tu recup�res donc une collection d'objets :
    et tu la scannes dans une boucle
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    var colLen=document.getElementsByName['mauvaise'].length
     for (i=0;i<colLoen;i++){
          alert(document.getElementsByName['mauvaise'][i].value)
    }
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 24
    Par d�faut
    je ne comprend pas trop :

    voici ce que j'ai mis dans mon code javascript � la place de �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    (...)
     
    if(formulaire.mauvaise[1].value.length < 1){
       alert('Le champ mauvaise réponse n°1 doit-être rempli !');
       formulaire.mauvaise[1].focus();
       return false;
    }
     
    (...)
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    (...)
     
    var colLen=document.fomrs['formulaire'].elements['mauvaise'].value).length
     
    for (i=0;i<colLoen;i++){
       if(document.fomrs['formulaire'].elements['mauvaise'][i].value).length < 1) {
          alert('Le champ mauvaise réponse n°'i' doit-être rempli !');
          document.fomrs['formulaire'].elements['mauvaise'][i].focus();
          return false;
       }
    }
     
    (...)
    j'ai aussi essayer �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    (...)
     
    var colLen=document.getElementsByName['mauvaise'].length
     
    for (i=0;i<colLoen;i++){
       if(document.getElementsByName['mauvaise'][i].length < 1) {
          alert('Le champ mauvaise réponse n°'i' doit-être rempli !');
          document.getElementsByName['mauvaise'][i].focus();
          return false;
       }
    }
     
    (...)
    Je pense que je n'utilise pas bien ce que tu m'as donn� car lorsque mais champs mauvaise[xx] ne sont pas remplis, le formulaire est quand m�me envoy� avec les champs vide !!!

    Merci pour l'aide que tu m'apporte

    A bient�t !

  4. #4
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    colLen != colLoen
    desol� pour la faute de frappe ...
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  5. #5
    Expert �minent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par d�faut
    Et

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.fomrs['formulaire']
    Qui �tait en fait forms. Copier/coller le code qu'on vous donne c'est d�ment, mais le lire, c'est plus intelligent.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 24
    Par d�faut
    en effet j'avais lu forms et non fomrs !
    je ferai plus attention la prochaine fois !

    je vais corrig� �a tout de suite !

Discussions similaires

  1. R�ponses: 3
    Dernier message: 08/01/2015, 09h02
  2. [AC-2010] Controle des champs vides dans un formulaire
    Par prosper02 dans le forum VBA Access
    R�ponses: 3
    Dernier message: 06/07/2013, 00h04
  3. formulaire access sur des champs vides
    Par qmike dans le forum Requ�tes et SQL.
    R�ponses: 5
    Dernier message: 28/05/2009, 10h20
  4. soumettre un formulaire avec des champs vides
    Par pesti dans le forum GWT et Vaadin
    R�ponses: 11
    Dernier message: 17/03/2009, 15h04
  5. test des champs d'un formulaire
    Par msahmi dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 27/02/2008, 13h46

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