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 :

[Formulaire] Liste déroulante dynamique [Fait]


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut [Formulaire] Liste déroulante dynamique
    Bonjour,

    Je dispose d'une liste déroulante avec beaucoup d'options à l'intérieur. Je voudrais donc ajouter une zone de texte où l'utilisateur taperait l'option qui lui conviendrait, et si elle existe alors la liste déroulante n'afficherait que les options que l'utilisateur a tapé.

    Suis-je clair ? Si oui quelqu'un sait faire ça ?

    Merci d'avance !

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 397
    Par défaut
    Il va te falloir utiliser AJAX à priori...

    Un tutoriel ici http://dcabasson.developpez.com/arti...ion-pas-a-pas/

  3. #3
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    heu il y a plusieurs options identiques ?
    ou tu veux que uniquement les options "commençant par ..." ce que l'utilisatuer à tapé s'affichent ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    Plusieurs options identiques séparées par des tirets.

    Par exemple :
    Frite-merguez-saucisse
    Taboulé-tomate-merguez
    Hérisson-bolognaise-frite

    Quand l'utilisateur tape "frite" par exemple, dans la liste déroulante il ne doit n'y avoir plus que la 1ère et la 3ème option.

  5. #5
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    vite fait dasn l'idée ça pourrait faire un truc 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
    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
    <script type="text/javascript">
    var Formules= new Array();
     
    Formules[0]="Abricot-Banane-Coulis"
    Formules[0].value=1
    Formules[1]="Abricot-Charlotte-Domino"
    Formules[1].value=2
    Formules[2]="Amande-Banane-fraise"
    Formules[2].value=3
    Formules[3]="Frites-Merguez-mayonnaise"
    Formules[3].value=4
    Formules[4]="Barbac-Cerise-boisson"
    Formules[4].value=5
    Formules[5]="Poulet-Bonbon-frite"
    Formules[5].value=6
    Formules[6]="Steack-Haricots-ketchup"
    Formules[6].value=7
    Formules[7]="Saucisse-Salade-Tomate"
    Formules[7].value=8
    Formules[8]="Merguez-salade-Tomate"
    Formules[8].value=9
     
    function choice(Obj){
    var Sel=document.getElementById('Menus');
    Sel.options.length=0;
    var i=0;
     
    while(Formules[i]){
     
    		if(Obj.value.length>3 && (Formules[i].toLowerCase().indexOf(Obj.value.toLowerCase())>-1)){
     
    		         var newOpt=document.createElement('option');
    		         newOpt.innerHTML=Formules[i];
    		         newOpt. value=Formules[i].value;
    		         Sel.appendChild(newOpt);
    		         }
    		         i++;
    		         }
     
    }
     
    </script>
     
     
     
    </head>
     
    <body>
    <input type='text' onkeyup="choice(this)" value='' />
    <select id="Menus" style="width:250px;">
    </select>
    </body>
     
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 24
    Par défaut
    Oui c'est tout à fait ça le principe sauf que ma liste contient environ 200 options, je ne vais donc pas les numéroter une par une ! Il y aurait un autre moyen ?

    Merci beaucoup en tout cas !

  7. #7
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    comment ça les numéroter une par une ?
    de toute façn tu te pastille le code htm non ou alors les options proviennent d'une base ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. affichage d'une liste déroulante dynamique dans un formulaire
    Par manelll dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/06/2015, 12h42
  2. Formulaire avec liste déroulant dynamique
    Par Medkeita dans le forum Langage
    Réponses: 10
    Dernier message: 01/10/2010, 10h14
  3. Réponses: 3
    Dernier message: 06/04/2010, 11h10
  4. Réponses: 4
    Dernier message: 23/04/2006, 21h27
  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