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 :

Onchange sur liste déroulante


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Lycéen
    Inscrit en
    Avril 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2017
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Onchange sur liste déroulante
    Alors voilà, je suis débutante en javascript. Mon problème c'est que je n'arrive pas à attribuer une fonction différente pour chaque choix (2) qui se trouve dans ma liste. J'ai vu qu'il fallait utiliser onChange mais je ne sais pas comment faire.

    Merci à ceux qui prendront le temps de me répondre.

  2. #2
    Membre averti Avatar de Kennel sébastien
    Homme Profil pro
    Développeur
    Inscrit en
    Septembre 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 226
    Points : 329
    Points
    329
    Par défaut
    Je ne comprend pas grand chose, à ceux que tu souhaites faire :-/.

    C'est quoi la fonction que tu souhaites faire ?

    Et c'est quoi le code html de ta liste déroulante ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour et bienvenue sur DVP,

    avant tout il faut que :
    • tu expliques clairement la problématique (un exemple concret peut servir)
    • tu MONTRES le CODE (HTML + JS) que tu as déjà écrit (et qu'on peut éventuellement TESTER)

  4. #4
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut


    Exemple :

    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
    <!DOCTYPE html>
    <html lang="fr" dir="ltr">
    <head>
      <meta http-equiv="cache-control" content="public, max-age=60">
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <meta name="author" content="Daniel Hagnoul">
      <title>Test</title>
      <style>
      
      </style>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
      <script src="http://danielhagnoul.developpez.com/lib/dvjh/dvjhUtilities-1.3.3.js"></script>
      <script>
        'use strict';
     
        document.addEventListener( "DOMContentLoaded", ev => {
          
        }, false );
        
        window.addEventListener( "load", ev => {
          
          document.querySelector( "#testSelect" ).addEventListener( "change", ev => {
            let n = ev.target.value;
            
            switch( n ){
              case "1" :
                // votre code, ici message dans la console (touche F12)
                console.log( `Vous avez sélectionnez la valeur ${ n }` );
                break;
              case "2" :
                console.log( `Vous avez sélectionnez la valeur ${ n }` );
                break;
              case "3" :
                console.log( `Vous avez sélectionnez la valeur ${ n }` );
                break;
              case "4" :
                console.log( `Vous avez sélectionnez la valeur ${ n }` );
                break;
              default :
                console.error( "Cette valeur n'existe pas !")
                break;
            }
          });
     
          kIDUnique();
        }, false );
      </script>
    </head>
    <body>
      <main>
     
        <select id="testSelect">
          <option value="1">Choix un</option>
          <option value="2">Choix deux</option>
          <option value="3">Choix trois</option>
          <option value="4">Choix quatre</option>
        </select>
     
      </main>
    </body>
    </html>

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  5. #5
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Peut-être comme ça.

    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
     
    <script>
     function titi(valeur) {
      if (valeur=="") return;
     
      if (valeur=="1") {
       fonction_1();
       return;
      }
     
      if (valeur=="2") {
       fonction_2();
       return;
      }  
     }
     
     function fonction_1() {
      alert("1");
     }
     
     function fonction_2() {
      alert("2");
     } 
    </script>
    <select id="toto" onchange="titi(this.value)">
     <option value="">Sélectionner une valeur</option>
     <option value="1">Valeur 1</option>
     <option value="2">Valeur 2</option> 
    </select>
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  6. #6
    Membre confirmé
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 388
    Points : 578
    Points
    578
    Par défaut
    Bonjour,

    Il existe de nombreuses solutions à ce problème posé d'une manière un peu vague. Autre exemple :

    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
    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <script>
          cas = function(nb) { alert("Vous avez sélectionné le choix n°"+nb+".") };
        </script>
      </head>
      <body>
        <select onChange="cas(this.value);"> 
          <option value="1">Choix 1</option>
          <option value="2">Choix 2</option>
          <option value="3">Choix 3</option>
        </select>
      </body>
    </html>

Discussions similaires

  1. OnChange sur liste déroulante
    Par paintbox dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 19/03/2011, 15h03
  2. Réponses: 2
    Dernier message: 21/03/2006, 01h24
  3. Pb de requery sur liste déroulantes
    Par patbeautifulday1 dans le forum Access
    Réponses: 13
    Dernier message: 10/03/2006, 18h42
  4. [MySQL] Affichage de données après click sur liste déroulante
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 27/01/2006, 12h08
  5. Selection clavier sur liste déroulante
    Par Maxime_ dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 12/01/2006, 10h35

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