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 :

options dynamiques dans un select


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 92
    Points
    92
    Par défaut options dynamiques dans un select
    bonjour,

    dans un FORM j'ai plusieurs SELECT
    dont 2 sont liés (ils sont ci-dessous) avec du javascript
    quand j'appuie sur le bouton "submit" le controller Rails ne récupère rien
    dans params[:ville] j'ai (NILL) par contre l'alerte JS me donne bien la ville.
    vu que je ne connais pas grand-chose en JS
    comment puis-je faire pour avoir la ville selectionnée dans
    mon controller ? FORM name=classic action="/look/at"


    voici un extrait du code

    Code html : 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
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
     
     
    <table>
     
    <FORM name=classic action="/look/at">
    <tr>
    <th>type de bien</th>
    <tr>
    <td>
     
    <SELECT style="WIDTH: 150px" size=1 name=typb>
    <OPTION selected value="appartement">Appartement</OPTION> 
    <OPTION value="villa">Maison / Villa</OPTION>  
    </SELECT>
    </td>
    </tr>
    <tr><th>nb de personnes</th>
    <tr>
    <td>
     
    <SELECT style="WIDTH: 150px" size=1 name=nbp>
    <OPTION selected value="02">2</OPTION> 
    <OPTION value="04">4</OPTION>  
    <OPTION value="06">6</OPTION>  
    <OPTION value="08">8</OPTION>  
    <OPTION value="00">+8</OPTION>  
    </SELECT>
    </td>
    </td>
    </tr>
    <tr>
    <th>date</th>
    <tr>
     
    <td>
     
    <SELECT style="WIDTH: 150px" size=1 name=dat>
    <OPTION selected value="07-10">07-10</OPTION> 
    <OPTION value="07-17">07-17</OPTION>  
    <OPTION value="07-24">07-24</OPTION>  
    <OPTION value="07-31">07-31</OPTION> 
    <OPTION value="08-07">08-07</OPTION>  
    <OPTION value="08-14">08-14</OPTION>  
    <OPTION value="08-21">08-21</OPTION>  
    <OPTION value="08-28">08-28</OPTION>  
    </SELECT>
    </td>
     
    </tr>
    <tr>
    <th>Région</th>
     
    <tr>
    <td>
    <SELECT style="WIDTH: 150px" 
     onclick=updateville(this.selectedIndex) size=1 name=region>
    <OPTION selected>Toutes</OPTION> 
    <OPTION value="costa del sol">Costa del Sol</OPTION> 
    <OPTION value="costa blanca">Costa Blanca</OPTION> 
    <OPTION value="costa del azahar">Costa del Azahar</OPTION>
    </SELECT> 
    </td>
    </tr>
    <tr>
    <th>Ville</th>
    <tr>
     
    <td>
    <SELECT style="WIDTH: 150px" 
          onclick=alert(this.options[this.options.selectedIndex].value) size=4 
          name=ville>
    </SELECT>
    </td>
    </tr>
    <input type="submit" />
    </FORM>
    </table>
     
    <SCRIPT type=text/javascript>
     
    var countrieslist=document.classic.countries
    var villelist=document.classic.ville
     
    var ville=new Array()
    // ville[0]=""
    ville[1]=["toutes|tscds", "Malaga|malaga", "Almunecar|almunecar", "Estepona|estepona", "Marbella|marbella" ]
    ville[2]=["toutes|tscbl", "Calpe|calpe", "Dénia|denia"]
    ville[3]=["toutes|tscda", "Peniscola|peniscola", "Vinaroz|vinaroz", "Benicarlo|benicarlo"]
     
    function updateville(selectedcitygroup){
    villelist.options.length=0
    if (selectedcitygroup>0){
    for (i=0; i<ville[selectedcitygroup].length; i++)
    villelist.options[villelist.options.length]=new Option(ville[selectedcitygroup][i].split("|")[0], ville[selectedcitygroup][i].split("|")[1])
    }
    }
     
    </SCRIPT>
     
     
    </BODY></HTML>

  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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    prend déja pour habitude de mettre des quotes autour de tous les attributs et evenements...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="..." name="...."

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 92
    Points
    92
    Par défaut résolu
    çà a l'air con, mais j'ai perdu pas mal de temps pour cette connerie !

    merci

  4. #4
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    d'ou l'utilité de prendre de bonnes habitudes de codage en respectant une syntaxe plus rigoureuse

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 92
    Points
    92
    Par défaut onclick
    dans le pb décrit ci-dessus, j'avais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <SELECT style="WIDTH: 150px" 
          onclick="alert(this.options[this.options.selectedIndex].value)"
          name="ville" size=2>
    </SELECT>
    maintenant cette "alert" je voudrais l'enlever sans ne rien perdre
    au niveau des données reçues par le controller.

    Je n'y arrive pas !

    je suis nul en JS !! !!
    (je pense qu'il faut ajouter un smiley qui pleure plus)

  6. #6
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <SELECT style="WIDTH: 150px" 
               name="ville" size=2>
    </SELECT>

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 107
    Points : 92
    Points
    92
    Par défaut
    même réponse qu'avant :
    c'est très con
    j'en pleure !

  8. #8
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    juste pour etre rigoureux ...


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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/10/2008, 16h07
  2. [script.aculo.us] <option> draggables dans un <select>
    Par Bownobo dans le forum Bibliothèques & Frameworks
    Réponses: 5
    Dernier message: 03/10/2008, 10h03
  3. Nombre d'options affichées dans un select
    Par 4R416N33 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/09/2008, 10h39
  4. Modifier l'option sélectionnée dans un select
    Par GLSpirit dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/04/2008, 10h42
  5. Critère dynamique dans un SELECT
    Par hpaille dans le forum Oracle
    Réponses: 3
    Dernier message: 08/08/2005, 12h42

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