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 :

Vérification de la correspondance de deux champs


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Points : 709
    Points
    709
    Par défaut Vérification de la correspondance de deux champs
    Bonjour,

    je suis en train de réaliser un formulaire dans lequel je veux vérifier que les deux champs de mot de passe soient les mêmes avant de pouvoir valider le formulaire.

    Pour cela, j'ai créé la fonction JavaScript :
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function verifForm() {
        if((document.upCzam.attribut.value == document.upCzam.attribut_conf) && (document.upCzam.attribut.value != '') && (document.upCzam.attribut_conf.value != ''))
        {
            document.getElementById('message').innerHTML = ' ';
            document.upCzam.valider.disabled = false;
            return true;
        }
        else
        {
            document.getElementById('message').innerHTML = '<strong>Les mot de passe ne correspondent pas&nbsp;!</strong><br />'
            document.upCzam.valider.disabled = true;
            return true;
        } 
    }
    Pour information, le formulaire associé est le suivant :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <form name="upCzam" action="index.php" method="post">
        <span id="message" name="message" style="color:Red;"></span>
        Nouveau mot de passe : <input type="text" name="attribut" onKeyPress="verifForm()" /><br />
        Confirmation : <input type="text" name="attribut_conf" onKeyPress="verifForm()" /><br />
        <input type="submit" id="valider" name="valider" value="Valider" disabled="true" />
    </form>
    Mon problème : lorsque les deux champs ne correspondent pas, j'ai bien le message d'erreur et la désactivation du bouton. Par contre, quand les deux champs correspondent, le bouton ne s'active pas et le message d'erreur reste apparent.
    (c'est pour ça que j'ai laissé des champs "text" : au moins, je peux voir avec mes yeux que c'est bon)

    Quelqu'un a-t-il une idée de la source de l'erreur ?

    Merci d'avance !

    Alban

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    le problème est certainement essentiellement celui-là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if((document.upCzam.attribut.value == document.upCzam.attribut_conf.value) && ...
    Ceci dit, la syntaxe est obsolète.
    Pour un accès via le <form> il faudrait préférer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if((document.forms['upCzam'].elements['attribut'].value == document.forms['upCzam'].elements['attribut_conf'].value) && ...
    A+

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2006
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Juin 2006
    Messages : 645
    Points : 709
    Points
    709
    Par défaut
    Ouch... bien vu ! J'ai un peu honte là...

    Et merci pour la "nouvelle" syntaxe : c'est plus joli en plus ;-)

    Sinon, pour compléter mon code (au cas où il serve à quelqu'un), j'ai remplacé le "onKeypress" par un "onKeyup". Le onKeypress ne réagissait qu'à la saisie d'un caractère ou d'un changement de champ... donc trop tard pour réagir (je ne sais pas si je suis bien clair).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 28/08/2013, 08h51
  2. [MySQL] Vérification de deux champs avant submit
    Par Anibel dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 30/04/2013, 11h17
  3. Test de vérification sur deux champs
    Par direct dans le forum Linux
    Réponses: 8
    Dernier message: 28/04/2009, 16h22
  4. Réponses: 1
    Dernier message: 11/07/2008, 12h04
  5. deux champs ont le même nom
    Par mamouna dans le forum ASP
    Réponses: 5
    Dernier message: 01/07/2004, 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