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 :

un control JS qui ne fonctionne pas sur une FORM


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 145
    Par défaut un control JS qui ne fonctionne pas sur une FORM
    Bonjour,

    J'ai crée un formulaire de saisie de donnée, il est en forme de tableau avec des champs de saisie et des liste deroulantes, sur une des colonne qui contient une liste deroulante, je sélectionne un attribut "SIGLE", qui est en fait la clé de chaque ligne sur ma base de données, je ne dois donc pas saisie deux lignes différentes, relatives au même sigle. je crée donc un control qui test pour chaque élément de la colonne s'il existe déjà dans cette colonne, voici mon 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
     
    var exp_sigle =new RegExp("f_sigle","g"); // le nom des elements SIGLE sont                                      
                                                           //du type "f_sigle"
    var cptsigle=1;
    var msg="";
    erreur = "_____________________________\nFormat erroné : \n";
    var formElts = document.DataForm.elements; // tableau contenant tous les 
                                                                 // elements de la FORME
     
    for(var x=0; x < formElts.length; x++) {
     
    if(formElts[x].type == 'select-one' )  // je test si c'est une liste deroulante
    {//6
    if (exp_sigle.test(formElts[x].name))  // et si elle correspond a SIGLE
       { //5
    /*****************************************************/
     
    	 for( y=x+1; y < formElts.length; y++)
    	 {//1
               if (exp_sigle.test(formElts[y].name))
    	   {// 2
    		alert("hello2");
    		 cptsigle++;
    		if(document.DataForm.elements[x].value==document.DataForm.elements[y].value && x!=y) // ce test ne fonctionne pas a cause de x!=y
    		{//3
    		alert("hello4");
    		msg+="- Le sigle ("+formElts[x].value+") existe deja \n"; formElts[x].style.backgroundColor='#FFDFAA';
    		}//3
    	   } //2
    	  }  //1
     
    	/*****************************************************/
        }//5
    }//6
    Vous voyez qlq chose qui cloche ????

    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 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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(formElts[x].type.toLowerCase() == 'select-one' )
    ??
    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 confirmé
    Inscrit en
    Août 2005
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 145
    Par défaut
    Mais je comprends pas ce que ça va changer ???

  4. #4
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 145
    Par défaut
    J'ai essayer cette modif, mais ça marche po !!!!

  5. #5
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Mais en quoi cela ne fonctionne pas ???

  6. #6
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 145
    Par défaut
    if(document.DataForm.elements[x].value==document.DataForm.elements[y].value && x!=y)

    C'est cette condition qui ne fonctionne pas, je crois que le problem vient de x!=y, mais j'en suis pas sure

Discussions similaires

  1. [KeyDown/Up] Ne fonctionne pas sur une form
    Par Hujii dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/07/2009, 10h21
  2. [NASM] Int 21h qui ne fonctionne pas sur mon mini OS
    Par andromeda dans le forum Assembleur
    Réponses: 4
    Dernier message: 07/04/2007, 18h03
  3. Script JSP qui ne fonctionne pas sur n'importe quel poste
    Par vannary dans le forum Servlets/JSP
    Réponses: 15
    Dernier message: 18/12/2006, 11h56
  4. Requete qui ne fonctionne pas sur toutes les versions de MySQL
    Par goldorax113 dans le forum Requêtes
    Réponses: 2
    Dernier message: 06/06/2006, 11h04
  5. Code qui ne fonctionne pas sur Mac
    Par malbaladejo dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 14/01/2005, 11h08

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