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 :

comparer deux champs d un formulaire


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 26
    Points : 11
    Points
    11
    Par défaut comparer deux champs d un formulaire
    Bonjour je dois comparer deux champs d'un formulaire avec la fonctions suivante :

    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
     
     <!--Le script-->
     
    <script language="JavaScript">
    function Test(){
     
      var1 = document.monform.fcity.value;
      var2  = document.monform.fweek.value;
     
    if(var1==var2){
        alerte="Saisissez au moins 1 filtre!";
     
        alert(alerte);
        return false;
     
      }//fin premier if
      else{
        return true;
      }
    }//fin fonction test
    </script>
    Le problème est lorsque ces deux champs sont vides ca marche ou si je choisis un filtre idem mais dès que je choisis les deux filtres ca m envoi la fenetre alerte comme si les deux champs etaient egaux!!!.

    Qu est ce qui cloche dans ma logique??


    quelqu un pour m aider?

    merci

  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 637
    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 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    que dois tu tester au juste ?
    quand dois -t-il retourner true et quand false ?

    là si tes champs sont identiques tu auras l'alerte ...
    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 actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 265
    Points : 284
    Points
    284
    Par défaut
    Salut,

    tu veux vérifier que les champs sont égaux ou qu'au moins un des deux champs est saisi ?

    Non je dis ca parce que ton message d'erreur dit : "Saisissez au moins 1 filtre" et que tes champs étant une ville et une semaine je vois pas trop comment ils pourraient etre comparable...

    Enfin bon si tu dois vérifier qu'au moins un des deux champs est bien saisi tu dois faire ca plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(var1=='' && var2==''){

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 26
    Points : 11
    Points
    11
    Par défaut Comparer deux champs
    Bonjour jln13 et space frog.

    En fait ce que je veux c'est si on ne choisit pas de filtre une message d'alerte apparait pour dire de choisir au moins un filtre mais ca ca marche. Mais lorsque je choisis les deux filtres le message apparait aussi; a savoir qu'un champs contient du texte et l'autre du numérique. Ci dessous un exemple d'un des deux champs. Je le rempli en accedant à une base de donnée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <%SQL="SELECT distinct area FROM clients"
    Set RS = server.createobject("ADODB.Recordset")
    RS.Open SQL,Conn , 3, 3%>
       <select name="fcity"
       size="1" tabindex="1" 
     style="color: #336699; font-family: Verdana; font-size: 8pt">
       <option selected value="0">Région</option>
       <%while not RS.eof%>
          <option><%=RS("area")%></option>
       <% RS.moveNext
       wend %>
      </select>


    Si vous avez une idée....
    Merci à vous.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 453
    Points : 550
    Points
    550
    Par défaut
    Alors il faudrait faire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if(val1=="0" && val2=="0") {
    alert("au moins 1 filtre");
    return false;
    }
    else if(val1=="" && val2=="") {
    {
    alert("au moins 1 filtre");
    return false;
    } else {
    return true;
    }

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 26
    Points : 11
    Points
    11
    Par défaut Trouvé
    Hello Sachav et les autres,

    Bon finalement j'ai trouvé la solution :

    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
    <script language="JavaScript">
    function Test(){
     
     var1 = document.monform.fcity.value;
      var2  = document.monform.fweek.value;
    if(var1=='0' && var2=='0'){
        alerte="Saisissez au moins 1 filtre!";
        alert(alerte);
        return false;
      }
     
     
      else if (var1!= var2) {
        return true;
     
      }
    }
    </script>
    et bizarement c'est la ligne else if (var1!= var2) {return true qui me corrige le problème à savoir quand je sélectionne le champ 1 et 2 le message d'alerte n'apparait plus. Mystère tout de même. J'attends juste une confirmation de votre part et je cloture cette question.

    Merci à tous ceux qui ont gentillement répondu à mon problème et bonnes fêtes de fin d'année à tous.

Discussions similaires

  1. [AC-2007] Comparer deux champs dans deux sous formulaires différents
    Par jerome94 dans le forum IHM
    Réponses: 20
    Dernier message: 15/02/2012, 08h35
  2. Comparer deux champs concaténés
    Par mouaa dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/05/2008, 15h26
  3. Filtrer une table en comparant deux champs entre eux
    Par damene dans le forum Débuter
    Réponses: 13
    Dernier message: 12/04/2008, 19h10
  4. Editeur de recherche - comparer deux champs
    Par sscouby dans le forum 4D
    Réponses: 1
    Dernier message: 17/10/2007, 12h08
  5. Créer un lien en deux champs d'un formulaire
    Par colinet dans le forum IHM
    Réponses: 2
    Dernier message: 13/01/2005, 08h41

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