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 :

Pb de liste déroulante dynamique


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Par défaut Pb de liste déroulante dynamique
    Bonsoir/bonjour tout le monde !

    Voilà, dans mon code html j'ai cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <script language="JavaScript" >
        chargement();
    </script>
    et voilà le code de ma fonction chargement();

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function chargement() {
     
    if(document.getElementById("idListeRubriques").selectedIndex == 2) {
       document.write("<select name=Annee id=idAnnee > <? echo $Opt;></select>");
    }else if (document.getElementById("idListeRubriques").selectedIndex == 4){
        document.write("<select name=Annee id=idAnnee > <? echo $OptSR2; ?></select>");
    	}
     }
    }
    En gros j'ai deux liste, si on sélectionne la 2ème ligne alors la 2ème liste aura les valeurs de la variable $Opt, si on sélectionne là 4ème ligne alors ce sera les valeurs de la variable $OptRS2.

    Le problème c'est que l'appel de la fonction n'est pas dynamique, au lancement de la page il n'y a rien à afficher car la première liste n'a pas été sélectionner...

    Comment je pourrais rendre cela dynamique ? J'ai été voir la faq du site à ce sujet mais je dois utiliser des listes dont les valeurs viennent de PHP..

    D'avance un énorme merci car j'ai passé tout mon dimanche dessus et je bloc...

    En espérant vous rendre l'ascenceur un jour, bonne semaine !!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 32
    Par défaut
    Salut,

    En fait je pense que tu devrais plutôt mettre ta deuxième liste dans un div, et quand tu change ta valeur dans la premiere liste et bien tu réécris tout le contenu de ton div!!

    Ta fonction chargement deviendrais donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function chargement() {
     
    if(document.getElementById("idListeRubriques").selectedIndex == 2) {
       document.getElementById("mondivdema2emeliste").innerHTML = "<select name=Annee id=idAnnee > <? echo $Opt;></select>";
    }else if (document.getElementById("idListeRubriques").selectedIndex == 4){
        document.getElementById("mondivdema2emeliste").innerHTML = "<select name=Annee id=idAnnee > <? echo $OptSR2; ?></select>";
    	}
     }
    }

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Par défaut
    Salut stanford et merci infiniment pour ta réponse !!!

    J'ai ficelé ça comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <div id="div">
         <script language="JavaScript">
             chargement();
         </script>
     
    </div>

    Il n'ya pas d'erreur mais la 2ème liste ne s'affiche pas, j'ai pourtant changé la fonction Chargement..

  4. #4
    Membre éclairé
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Par défaut
    Tout va bien, j'ai simplement appelé la fonction traitement dans une fonction liste1_onLoad() et ça fonctionne superbement bien !

    Un énorme merci en tout cas !!!

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 32
    Par défaut
    je t'en prie, juste un mot pour finir, la solution du innerHTML dans un div est la solutions magique dans pas mal de cas j'ai constaté, donc a ne pas oublié

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

Discussions similaires

  1. récupérer la valeur d'une liste déroulante dynamique
    Par grinder59 dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 23/01/2006, 17h51
  2. Liste déroulante dynamique
    Par Screw16 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/10/2005, 20h37
  3. [HTML] liste déroulante dynamique
    Par lacousinee dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 04/08/2005, 20h51
  4. Liste déroulante dynamique ?
    Par Regis.C dans le forum Composants
    Réponses: 5
    Dernier message: 29/06/2005, 12h09
  5. [FORMULAIRE] Liste déroulante dynamique
    Par bchristo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/01/2005, 10h07

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