Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problème de listes déroulantes liées [ JavaScript et le navigateur / Autre ] (deatmead)

mardi 9 septembre 2008 à 21:50:03 | Problème de listes déroulantes liées

deatmead

Bonsoir tout le monde,
Déjà j'esper poster dans la bonne section.

Voilà après plusieurs jours de recherche, tuto, messages sur les forums, je n'arrive pas à résoudre mon problème.

J'ai 2 listes déroulantes liées ;
-Pays
--Région

et j'aimerais en ajouter une 3eme qui est liée à Région donc:
--Ville

Petit schéma :
Pays
-Région
--Ville

je penses que c'est bien expliqué.

voici le code que j'utilise :


<head>
<title>TEST</title>
</head>

<body>




        <tr>
<td align="right">PAYS</td><td><select class="searchTreeLevel1" name="MakeModel[tree][1]" id="MakeModel_1" onChange="generate_MakeModel_ChildList(1, this.value)">
<option value="0">PAYS</option></select><td>
        </tr>
       
<script language='JavaScript' type="text/javascript">

levels_captions = new Array();

levels_captions[0] = 'PAYS';
levels_captions[1] = 'REGION';
levels_captions[2] = 'VILLE';

tree_depth = 3;

tree_MakeModel = {

0:         [{"id":11, "caption": 'FRANCE'},            {"id":15, "caption": 'ITALIE'},            {"id":19, "caption": 'ESPAGNE'}],

11:     [{"id":12, "caption": 'VAL DOISE'},            {"id":13, "caption": 'PACA'},                    {"id":14, "caption": 'ISERE'}],

15:     [{"id":16, "caption": 'ITA1'},            {"id":17, "caption": 'ITA2'},                    {"id":18, "caption": 'ITA3'}],

19:        [{"id":20, "caption": 'ESP1'},        {"id":21, "caption": 'ESP2'},                {"id":22, "caption": 'ESP3'}]};

function generate_MakeModel_ChildList(level, value) {

    if (level != tree_depth) {
        list = document.getElementById('MakeModel_' + (level + 1) );
        list.options.length = 0;
        list.options[0] = new Option('' + levels_captions[level], "");
        if (tree_MakeModel[value]) {
            childs = tree_MakeModel[value];
            for (i = 0; i < childs.length; i++)    {
                child = childs[i];
                list.options[i + 1] = new Option(child['caption'], child['id']);
            }
        }
    }
}

generate_MakeModel_ChildList(0, 0);


</script>

        <tr>
<td align="right"><br>REGION</td><td><select class="searchTreeLevel2" name="MakeModel[tree][2]" id="MakeModel_2" onChange="generate_MakeModel_ChildList(2, this.value)">
<option value="0">REGION</option></select><td>
        </tr>

<tr>
<td align="right"><br>VILLE</td><td><select class="searchTreeLevel3" name="MakeModel[tree][3]" id="MakeModel_3" onChange="generate_MakeModel_ChildList(3, this.value)">
<option value="0">VILLE</option></select><td>
</tr>

   
</body>
</html>       


Si jamais vous pouvez m'aider car je patauges depuis un long moment.

Un grand merci d'avance


mercredi 10 septembre 2008 à 11:36:52 | Re : Problème de listes déroulantes liées

bultez

Membre Club
bonjour,
sujet plus que récurrent....
t'as pas du cherché longtemps....

ch'tiot exemple ici      exemple en pur javascript, pur php, ajax

c'est avec 2 select.... à toi d'adapter à ton besoin....
( ce qui est fait pour le 2ème, "il suffit" de le reproduire pour le 3ème )

CordialementBul[mon Site][M'écrire]

mercredi 10 septembre 2008 à 11:44:42 | Re : Problème de listes déroulantes liées

deatmead

Merci pour ton aide mais j'ai déjà vu pas mal de code différent.
Et je ne parviens pas à faire une 3eme listes liées

mercredi 10 septembre 2008 à 12:08:33 | Re : Problème de listes déroulantes liées

bultez

Membre Club
ah... et que fais tu qui plante ?
CordialementBul[mon Site][M'écrire]

mercredi 10 septembre 2008 à 12:15:22 | Re : Problème de listes déroulantes liées

deatmead

enfaite j'ai repris ton code pour voir si j'y arrivais :
http://marcel-bultez.chez-alice.fr/documents/ADSL/ADSL.php, j'ai commencé par testé avec ton tuto: En pur JavaScript

mais le problème c'est que si je lis la 3eme à la 2eme dans les 2 listes déroulantes j'ai les même données.

mercredi 10 septembre 2008 à 12:36:30 | Re : Problème de listes déroulantes liées

bultez

Membre Club
réponse :  comme dans ma réponse au message privé ( inutile ) ,
              et comme dans mon message ci-dessus.
dans le forum, si tu mets ce que tu fais, les intervenants devraient
t'aider à mettre au point.
CordialementBul[mon Site][M'écrire]

mercredi 10 septembre 2008 à 13:07:17 | Re : Problème de listes déroulantes liées

deatmead

voilà j'ai un peu modifié

<HTML>
<HEAD>
<TITLE>TEST</TITLE>

<script type="text/javascript">
function gensel2() { s2.length=0; for ( var n=0; n<liste[s1.selectedIndex].length; n++ ) { s2.length++; s2.options[s2.length-1].text=liste[s1.selectedIndex][n]; } }
</script>

 </HEAD>
 
 <BODY>
 
 <form name="frm">
    <select size=4 name="sel1" id="sel1" onchange="gensel2();">
        <optgroup label="TYPE">
            <option>MOBILE</option>
            <option>GPS</option>
            <option>MP3</option>
        </optgroup>
    </select>

    <select size=4 name="sel2" id="sel2" onchange="gensel2();">
        <optgroup label="MARQUE">
        </optgroup>
    </select>
<script type="text/javascript">
    var s1=document.getElementById("sel1");
    var s2=document.getElementById("sel2");
        var liste=new Array( new Array("SAMSUNG","LG"),
        new Array("TOMTOM","NAVIGO"),
        new Array("IPOD","CREATIVE") );
</script>

    <select size=4 name="sel3" id="sel3">
        <optgroup label="MODELE">
        </optgroup>
    </select>



<script type="text/javascript">
    var s2=document.getElementById("sel2");
    var s3=document.getElementById("sel3");
        var liste=new Array( new Array("aSAMSUNG","aLG"),
        new Array("aTOMTOM","aNAVIGO"),
        new Array("aIPOD","aCREATIVE") );
</script>

</form>
</BODY>
</HTML>

mercredi 10 septembre 2008 à 13:29:59 | Re : Problème de listes déroulantes liées

bultez

Membre Club

si tu fais    <select size=4 name="sel2" id="sel2" onchange="gensel2();">
ça recrée donc le 2ème select en ne tenant compte que du chois dans le select 1 !
appelle une autre fonction (gensel3() ? ) , qui tiendra compte des  sélections
dans le select 1 et dans le select 2 pour créer le select 3

CordialementBul[mon Site][M'écrire]

mercredi 10 septembre 2008 à 13:53:20 | Re : Problème de listes déroulantes liées

deatmead

j'avais déjà essayé et pof rien du tout

mercredi 10 septembre 2008 à 14:16:20 | Re : Problème de listes déroulantes liées

bultez

Membre Club
oui... mais ce que tu fais là, ne peut pas résoudre
que tentais tu qui "pof rien du tout" ?
CordialementBul[mon Site][M'écrire]



Cette discussion est classé dans : caption, id, levels, captions, makemodel


Répondre à ce message

Sujets en rapport avec ce message

creer des option dans une liste deroulate à la volée [ par axl63800 ] Bon je vais essayer d'etre le plus clair possibleEn gros j'ai un formulaire pour remplir une base de donnée et qui va recolter des infos dans celle ci Recuperer le SId avec javascript [ par nikos283 ] SalutJ'ai une petit proble, voila j'ai une page php qui crée une session et j'aimerai avec javascript recupérer le nom et valeur de cette session. pou Identification [ par MiTcH37 ] bijour,j'aimerais créer un login automatique, alors il me faudrait soit l'ID de l'internaute (s'il ne change pas à chaque connection ?) ou avec un coo Mozilla et position d'un <div> [ par philagui ] Bonjour,Voila j'utilise le script suivant pour positionner et afficher quelque chose sur une page:function show(calque, id) { document.getElementById( cellules d'un tableau qui changent de couleur [ par hella71 ] Merci Vous trouverez ci apres le scripttout va bien sur iexplorer mais sur netscape ca marche pas Merciiiiiiiiiii pour votre aide.function cha bouton et action, un chti coup de pouce... [ par Spiritraid ] voici mon code : function help_box(id_code) {var info = new array( "test", ) if(info[id_code]) { document.post.h Récupérer l'id d'un select [ par iomega ] Bonjour à tous je voudrai récupérer dans un autre champs nommé auteur le numéro d'index d'un select mais le problème est que le l'id contient du text position d'un id [ par pqmoltonel ] bonjour, je cherche desespérément une fonction / propriétée qui permet de retourner la position d'un element html quelconque contenant un id:voila le Download sur poste client [ par ogas430 ] Bonsoir !Pour eviter les problemes de redondance de fichiers, j'ai ajouté une table dans mysql avec un ID et un champ correspondant au nom du fichier. Défilement automatique des pages d'un site ? [ par adelysnet ] Bonjour,Je souhaite faire défiler des pages d'un site automatiquement.Chaque page finirait par viewimage2.php?imageID=1&style=listing En fait, seule l


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.