Partage
  • Partager sur Facebook
  • Partager sur Twitter

formulaire interactif qui n'est pas interactif !!

débutante

Sujet résolu
    20 avril 2011 à 13:18:48

    Bonjour,
    bon je veux faire un formulaire interactif en javascript, càd qui indique les erreurs de saisi pendant le remplissage du formulaire
    par exemple pour une zone de texte nom si elle contient moins de 2 lettres, la bordure doit devenir rouge, sinon c'est vert
    mon code donne le bon résultat mais seulement si j'actualise la page, pas pendant l'écriture dans la zone !

    <input type="text" name="nom" />
    


    <script>
    var elts=document.getElementsByTagName('input'),
        long=elts.length;
    
    
    for(var i=0;i<long;i++)
    {
      if(elts[i].type == 'text' ){
    
      // cas 1 d'erreur :  NOM
      if(elts[i].name == 'nom')
      {
        var text=elts[i].value,
        lng=text.length;
    
        if(lng<2 && lng>0)
        {
          elts[i].addEventListener('focus', function(e){
          e.target.style.borderColor="red";
          e.target.style.borderWidth=4 +'px';
        },false);
        }
        else
           {
            elts[i].addEventListener('focus', function(e){
            e.target.style.borderColor="green";
            e.target.style.borderWidth=4 +'px';
            },false);
          }
      }
    
    }
    </script>
    


    et merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      20 avril 2011 à 13:51:26

      Il faut que le code qui vérifie ton input soit dans une fonction ensuite il faut l'appeler sur l'événement que tu veux.


      <script type="text/javascript">
      function verifChamp(id) {
      	var el = document.getElementsById(id);
      	
      	if(el.length < 2 && el.length > 0) {
      		// code
      	} else {
      		// code
      	}
      }
      </script>
      <form>
      <input type="text" name="nom" id="nom" onkeyup="verifChamp(this.id);"/>
      <input type="text" name="prenom" id="prenom" onkeyup="verifChamp(this.id);"/>
      </form>
      


      Utilise plutôt l'id ça te simplifie le code.
      • Partager sur Facebook
      • Partager sur Twitter

      formulaire interactif qui n'est pas interactif !!

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown