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 avec 3 listes déroulantes liées


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Pb avec 3 listes déroulantes liées
    Bonsoir à tous,
    je ne suis pas un grand pro du JavaScript mais je pensais que mon script sur 3 listes déroulantes liées était bon. Apparemment non !!

    Quelqu'un peut-il donc m'aider à trouver d'où vient l'erreur car quand je teste mon script, rien ne se passe ??
    Lorsque je teste 2 listes déroulantes liées ça fonctionne mais pas avec 3. De mon côté, c'est un grand mystère !! HELP !!

    Voilà mon script :

    <HTML><HEAD>
    <META http-equiv=Content-Type content="text/html; charset=windows-1252">
    <SCRIPT language=JavaScript>
    <!--
    function Choix1(form) {
    i = form.Etat.selectedIndex;
    if (i == 0) {
    return;
    }
    switch (i) {
    case 1 : var txt = new Array ('Grand Canyon','Phoenix/Scottsdale','Sedona'); break;
    case 2 : var txt = new Array ('Los Angeles','Palm Springs','San Francisco'); break;
    case 3 : var txt = new Array ('Key West','Miami','Orlando'); break;
    }
    form.Ville.selectedIndex = 0;
    for (i=0;i<3;i++) {
    form.Ville.options[i+1].text=txt[i];
    }
    }
    // -->
    <!--
    function Choix2(form) {
    j = form.Ville.selectedIndex;
    if (j == 0) {
    return;
    }
    switch (j) {
    case 1 : var txt = new Array ('El Tovar','Maswik Lodge','Yavapaï Lodge East'); break;
    case 2 : var txt = new Array ('Days Inn','Fairmont','Renaissance'); break;
    case 3 : var txt = new Array ('Amara Creekside Resort','L''Auberge de Sedona','La Quinta Inn'); break;
    case 4 : var txt = new Array ('Angeleno','Hollywood Roosevelt','Mondrian'); break;
    case 5 : var txt = new Array ('Best Western Inn','Ramada Inn','Wyndham'); break;
    case 6 : var txt = new Array ('Clift','Monaco','Radisson Fisherman''s Wharf'); break;
    case 7 : var txt = new Array ('Casa Marina Resort','Crowne Plaza La Concha','Doubletree Grand Key Resort'); break;
    case 8 : var txt = new Array ('Delano','National','The Palms'); break;
    case 9 : var txt = new Array ('Best Western Movieland','Celebration','La Quinta Inn Maingate'); break;
    }
    form.Hotel.selectedIndex = 0;
    for (j=0;j<9;j++) {
    form.Hotel.options[j+1].text=txt[j];
    }
    }
    </SCRIPT>

    </HEAD>
    <BODY>
    <FORM>
    <TABLE>
    <TBODY>
    <TR>
    <TD>
    <SELECT onChange=Choix1(this.form) name=Etat>
    <OPTION selected>--- Choisissez un Etat ---</OPTION>
    <OPTION>Arizona</OPTION>
    <OPTION>Californie</OPTION>
    <OPTION>Floride</OPTION>
    </SELECT>
    </TD>
    <TD>
    <SELECT onChange=Choix2(this.form) name=Ville>
    <OPTION selected>---choisissez une ville ---</OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    </SELECT>
    </TD>
    <TD>
    <SELECT name=Hotel>
    <OPTION selected>--- Choisissez une page ---</OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    <OPTION></OPTION>
    </SELECT>
    </TD>
    </TR>
    </FORM>
    </body>
    </html>

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 58
    Points : 57
    Points
    57
    Par défaut
    Bon voilà, j'ai retappé ton code en bonne partie puisqu'il y avait plusieurs erreurs dans ton code. Ce qui faisait planter ton javascript c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    case 3 : var txt = new Array ('Amara Creekside Resort','L''Auberge de Sedona','La Quinta Inn'); break;
    Pour afficher une apostrophe tu dois faire \'

    Tu devrais jeter un coup d'oeil pour générer ton combobox dynamiquement au lieu de mettre plein de case vide comme ça, ça serait plus beau y'a pas de doute.

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    <HTML>
    <HEAD> 
      <SCRIPT type="text/javascript">
      function choix1() { 
        var i = document.frm.Etat.selectedIndex; 
     
        switch(i){ 
          case 1 : var txt = new Array ('Grand Canyon','Phoenix/Scottsdale','Sedona'); break; 
          case 2 : var txt = new Array ('Los Angeles','Palm Springs','San Francisco'); break; 
          case 3 : var txt = new Array ('Key West','Miami','Orlando'); break; 
        } 
        document.frm.Ville.selectedIndex = 0; 
        for(i=0;i<3;i++){ 
          document.frm.Ville.options[i+1].text=txt[i]; 
        } 
      }
     
      function choix2() { 
        var j = document.frm.Ville.selectedIndex; 
     
        switch (j) { 
          case 1 : var txt = new Array ('El Tovar','Maswik Lodge','Yavapaï Lodge East'); break; 
          case 2 : var txt = new Array ('Days Inn','Fairmont','Renaissance'); break; 
          case 3 : var txt = new Array ('Amara Creekside Resort','L\'Auberge de Sedona','La Quinta Inn'); break; 
          case 4 : var txt = new Array ('Angeleno','Hollywood Roosevelt','Mondrian'); break; 
          case 5 : var txt = new Array ('Best Western Inn','Ramada Inn','Wyndham'); break; 
          case 6 : var txt = new Array ('Clift','Monaco','Radisson Fisherman\'s Wharf'); break; 
          case 7 : var txt = new Array ('Casa Marina Resort','Crowne Plaza La Concha','Doubletree Grand Key Resort'); break; 
          case 8 : var txt = new Array ('Delano','National','The Palms'); break; 
          case 9 : var txt = new Array ('Best Western Movieland','Celebration','La Quinta Inn Maingate'); break; 
        } 
        document.frm.Hotel.selectedIndex = 0; 
        for (j=0;j<9;j++){ 
          document.frm.Hotel.options[j+1].text=txt[j]; 
        } 
      } 
     
      </SCRIPT> 
    </HEAD> 
    <BODY> 
      <FORM name="frm" method="post"> 
        <TABLE> 
          <TR> 
            <TD> 
              <SELECT name="Etat" id="Etat" onChange="choix1();"> 
                <OPTION value="" selected>--- Choisissez un Etat ---</OPTION> 
                <OPTION value="Arizona">Arizona</OPTION> 
                <OPTION value="Californie">Californie</OPTION> 
                <OPTION value="Floride">Floride</OPTION> 
              </SELECT> 
            </TD> 
            <TD> 
              <SELECT name="Ville" id="Ville" onChange="choix2();"> 
                <OPTION selected>---choisissez une ville ---</OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
              </SELECT> 
            </TD> 
            <TD> 
              <SELECT name="Hotel" id="Hotel"> 
    	    <OPTION selected>--- Choisissez une page ---</OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
    	    <OPTION></OPTION> 
              </SELECT> 
            </TD> 
          </TR>
        </TABLE>
      </FORM>
    </body>
    </html>

Discussions similaires

  1. [AJAX] avec 3 listes déroulantes liées php+xhtml+css+javascript+ajax
    Par Invité dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 27/12/2008, 15h54
  2. Problème avec des listes déroulantes liées
    Par guitsch dans le forum GTK+ avec C & C++
    Réponses: 9
    Dernier message: 22/10/2008, 16h07
  3. Formulaire avec double listes déroulantes liées
    Par glesker dans le forum Langage
    Réponses: 46
    Dernier message: 25/08/2008, 10h55
  4. [AJAX] Listes déroulantes liées avec Ajax
    Par paupiette dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/08/2006, 16h51
  5. [MySQL] Problème de listes déroulantes liées avec requêtes sql
    Par richton95 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 21/12/2005, 16h04

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