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

  1. #1
    Membre du Club
    Homme Profil pro
    Non disponible
    Inscrit en
    avril 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : avril 2008
    Messages : 53
    Points : 49
    Points
    49

    Par défaut Récupérer le premier élément <OPTION> affiché dans un <SELECT>

    Bonjour à tous,
    Je dois afficher une très grande liste de mots (plus de 400 000 !).
    Puisqu'il n'est pas possible de la charger en une fois dans un élément html <SELECT>, je souhaite le faire en fonction de la position des mots visibles. Par exemple, initialement, je chargerai les 100 premiers mots. Si l'utilisateur fait défiler la liste jusqu'à afficher ceux dont l'indice est >75, je lancerai le chargement des 50 suivants en supprimant les 50 premiers.
    En fait, il s'agit de déplacer un curseur. Ce comportement consiste en un chargement paresseux !
    Est-ce-que le problème est bien posé ?

    Merci de votre aide

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    juin 2003
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2003
    Messages : 7 115
    Points : 11 203
    Points
    11 203

    Par défaut

    peut-être que ça serait plus facile pour les utilisateurs si vous mettez un système d'autocomplétion ?
    https://jqueryui.com/autocomplete/

  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
    37 981
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 37 981
    Points : 64 957
    Points
    64 957
    Billets dans le blog
    1

    Par défaut

    En principe c'est un comportement par défaut du select, il affiche les mots commençant par lors de la frappe ...
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  4. #4
    Membre du Club
    Homme Profil pro
    Non disponible
    Inscrit en
    avril 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : avril 2008
    Messages : 53
    Points : 49
    Points
    49

    Par défaut

    @mathieu
    Oui, c'est une bonne idée.
    Je commence par afficher les 100 premiers et je filtre avec une zone de texte.
    @SpaceFrog
    Désolé, je ne comprend pas.

    EDIT: Les mots sont obtenus par une extraction SQL (SQLite)

  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
    37 981
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    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 : 37 981
    Points : 64 957
    Points
    64 957
    Billets dans le blog
    1

    Par défaut

    http://jsfiddle.net/L36y1r9e/5/

    donne le focus au select et tapes un nom de pays ...

    [edit] tri ajouté ...
    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


    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  6. #6
    Membre du Club
    Homme Profil pro
    Non disponible
    Inscrit en
    avril 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : avril 2008
    Messages : 53
    Points : 49
    Points
    49

    Par défaut

    @SpaceFrog
    Merci, je ne connaissais pas.
    Toutefois, je n'utilise pas JQuery!

  7. #7
    Rédacteur/Modérateur
    Avatar de jreaux62
    Homme Profil pro
    Webdesigner
    Inscrit en
    août 2008
    Messages
    13 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Arts - Culture

    Informations forums :
    Inscription : août 2008
    Messages : 13 567
    Points : 27 560
    Points
    27 560

    Par défaut

    1-
    Citation Envoyé par XDev1 Voir le message
    ...Toutefois, je n'utilise pas JQuery!
    Peu importe !

    SpaceFrog utilise jQuery uniquement pour l'affichage des options (au lieu de se les cogner à la main dans le <select> ).
    Au final, le code HTML est le même.

    Et le comportement aussi !

    N.B. A noter que la vitesse de frappe compte !
    ex. : en tapant L-I-E :
    • relativement rapidement, on obtient bien "Liechtenstein"
    • en espaçant plus chaque lettre, on obtient "Laos" - "Iceland" - "Ecuador" !


    2-
    Citation Envoyé par XDev1 Voir le message
    ...Je dois afficher une très grande liste de mots (plus de 400 000 !)....
    PERSONNE ne va faire défiler 400 000 mots dans une liste déroulante !
    PERSONNE !

    Il faut absolument t'intéresser à :
    • l'auto-complétion (dans un <input>, on tape le début d'un mot : on affiche les choix possibles au fur et à mesure)
    • et tant qu'à faire, à Ajax (avec ou sans jQuery) (pour aller chercher en Bdd les mots qui correspondent à la chaine tapées dans l'<input>)


    N.B. petite remarque sur le lien donné par mathieu (jQuery Autocomplete)
    Il faut lister TOUS les choix possibles dans une variable JavaScript availableTags = [...].
    J'imagine mal lister 400 000 mots (au chargement de la page)...

    Par contre, via Ajax, à chaque lettre ajoutée (onkeyup, par ex.), on peut faire appel via Ajax à la Bdd, pour faire une requête SQL des "mots commençants par..." (ou des "mots contenants...").
    "Si tu suis le chemin qui s'appelle « plus tard », tu arriveras à la place qui s'appelle « jamais »."
    François Camille Prévot (1910-1996), instituteur puis Directeur d'école et... mon grand-père.
    "Pose ta question, tu seras idiot une seconde. Ne la pose pas, tu seras idiot toute ta vie."
    Albert Einstein (1879-1955).
    Mes tutos DVP
    Gestion-Affichage de Nouvelles
    Affichage en tableau HTML
    Fonctions de redimensionnement d'images

  8. #8
    Membre du Club
    Homme Profil pro
    Non disponible
    Inscrit en
    avril 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : avril 2008
    Messages : 53
    Points : 49
    Points
    49

    Par défaut

    @jreaux62
    Très bien, merci.

  9. #9
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    janvier 2011
    Messages
    13 004
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : janvier 2011
    Messages : 13 004
    Points : 31 108
    Points
    31 108

    Par défaut

    Bonjour,
    Citation Envoyé par jreaux62
    N.B. petite remarque sur le lien donné par mathieu (jQuery Autocomplete)
    Ils faut lister TOUS les choix possibles dans une variable JavaScript availableTags = [...].
    ce plugin utilise également Ajax, il suffit de lui demander gentiment
    Autocomplete Remote data source par exemple

    Mais je te rejoins sur les 400 000 références, c'est un truc de ouf ou une erreur de frappe !

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

Discussions similaires

  1. supprimer un élément d'une base affiché dans une jsp
    Par smiles dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 26/03/2010, 10h51
  2. Réponses: 14
    Dernier message: 05/05/2008, 16h35
  3. récupérer le nom du serveur et l'afficher dans une jsp
    Par barouz dans le forum Servlets/JSP
    Réponses: 21
    Dernier message: 19/04/2007, 16h32
  4. Nombre d options a afficher dans une liste (select)
    Par wwluigi dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 16/01/2007, 16h17
  5. Réponses: 14
    Dernier message: 15/12/2005, 11h32

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