Sélection automatique du dernier élément de liste avec autocomplete

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par jer2701, 12 Septembre 2012.

  1. jer2701
    jer2701 WRInaute occasionnel
    Inscrit:
    2 Septembre 2005
    Messages:
    341
    J'aime reçus:
    0
    Bonjour,

    j'utilise un champs de recherche autocomplete.
    Lorsque l'utilisateur effectue la saisie des premiers caractères tout fonctionne il sort bien une liste.
    Par contre si la liste contient 1 seul item et que l'utilisateur ne prend pas forcement soin de le sélectionner avant de faire le submit, le formulaire est envoyé et renvoi un élément vide car l'élément de liste ne correspond à rien :

    Exemple :

    l'utilisateur tape "ch"
    1 seul mot apparait -> "chaise"
    ce mot apparait en dessous du champs de recherche en proposition
    si l'utilisateur omet de le sélectionner avant d'envoyer le formulaire la valeur de l'input sera "ch" et non "chaise"

    comment faire pour éviter cela,
    j'ai déjà pas mal cherché sur internet mais je ne trouve pas une méthode ou même une idée,

    Le code utilisé (à la place de "mon_resultat", j'ai ma requête sql et mon affichage en php :
    Code:
     <script>
        $(document).ready(function(){ $("input#autocomplete").autocomplete({source: [<?php echo"mon_resultat" ?>}});
      </script>
     
  2. Dewep
    Dewep Nouveau WRInaute
    Inscrit:
    8 Septembre 2012
    Messages:
    17
    J'aime reçus:
    0
    C'est en JavaScript qu'il faut faire ça, pas en PHP.
    Et sans le code/l'aperçu, ça va être dur. :)
     
  3. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 176
    J'aime reçus:
    327
    La source peut être du JSON, ça ne m'étonne pas qu'il aie mis <?php echo"mon_resultat" ?> (sachant qu'il ne nous montre pas le contenu), ce n'est pas ça son problème.

    Je vois plusieurs soluces:
    - Tu disable l'input submit, et tu l'actives à l'event "select" du autocomplete.
    - Tu mets dans une variable globale si l'event "select" s'est produit, et ensuite un listener sur le submit qui lis cette variable globale. Si select => submit, sinon effacer l'input text et ne pas submit.
     
  4. Dewep
    Dewep Nouveau WRInaute
    Inscrit:
    8 Septembre 2012
    Messages:
    17
    J'aime reçus:
    0
    Je partais du principe qu'il était l'auteur de l'autocomplete.
     
  5. jer2701
    jer2701 WRInaute occasionnel
    Inscrit:
    2 Septembre 2005
    Messages:
    341
    J'aime reçus:
    0
    Merci Spout ça me parais pas mal du tout !
    dans l'idée je pensais aussi ajouter un champ hidden et faire passer ma sélection dedans avec un disable sur l'input tant que le champ hidden ne contient rien... C'est casi le même principe
    Merci !!
     
Chargement...
Similar Threads - Sélection automatique dernier Forum Date
Réseau Display: Désactivé "emplacements sélectionnés automatiquement" AdWords 5 Octobre 2011
Google sélectionne une autre URL canonique que celle déclarée Référencement international (langues, pays) 31 Mai 2021
Page en double : l'URL envoyée n'a pas été sélectionnée comme URL canonique Référencement international (langues, pays) 2 Avril 2021
Page en double : l'URL envoyée n'a pas été sélectionnée comme URL canonique Problèmes de référencement spécifiques à vos sites 24 Février 2021
Search Console URL canonique sélectionnée par Google : Sans objet Débuter en référencement 27 Janvier 2021
Search Console Page en double : l'URL envoyée n'a pas été sélectionnée comme URL canonique Problèmes de référencement spécifiques à vos sites 4 Septembre 2020
Search Console Page en double sans URL canonique sélectionnée par l'utilisateur? Crawl et indexation Google, sitemaps 1 Octobre 2019
Search Console Page en double sans URL canonique sélectionnée par l'utilisateur Crawl et indexation Google, sitemaps 5 Août 2019
Comment sélectionnez vous votre thème Wordpress? Développement d'un site Web ou d'une appli mobile 15 Janvier 2019
Choix et sélection des annuaires et backlinks ? Débuter en référencement 30 Décembre 2018