JQuery Autocomplete: Soumettre le Formulaire sur la sélection?
À l'aide de JQuery Autocomplete sur un traditionnel formulaire HTML.
D'essayer de soumettre le formulaire (à l'ancienne) lorsqu'une sélection est effectuée.
Mais la zone d'entrée est complété et puis j'ai à faire, appuyez sur "retour" d'un 2ème temps, ou cliquez sur le bouton "soumettre".
J'ai essayé quelques SORTE des exemples, mais je ne pouvais pas les faire travailler.
Comment faites-vous envoyer le formulaire automatiquement lorsque la sélection est faite?
- en bref: définir un callbackfunction et soumettre le formulaire dans la callbackfunction avec javascript. Ne sais pas vraiment comment le faire dans le code.
Vous devez vous connecter pour publier un commentaire.
Mise à JOUR: j'ai enfin compris ça, le code ci-dessous devrait faire l'affaire. Pour une raison quelconque, le
change
de rappel n'a pas de travail, mais leclose
&select
rappels de le faire. À l'aide deselect
est mieux, puisqueclose
également être appelée que si le champ perd le focus.Une AUTRE mise à JOUR: Ok, il y a aussi un problème avec le
select
de rappel, qui est celle par défaut (dans le code ci-dessus) si vous traversez la saisie semi-automatique déroulant avec le clavier, et sélectionnez avec la touche entrée, l'entrée est changé avant que le formulaire est soumis. Toutefois, si vous sélectionnez avec la souris, le formulaire est soumis juste avant l'entrée est modifiée, de sorte que la valeur envoyée est juste que l'utilisateur a tapé (pas ce qu'elle a sélectionnés à partir de la saisie semi-automatique de liste déroulante). Le woraround qui semble fonctionner est:$(this)
de référence#searchField
et$(this).closest('form')
pour#searchForm
comme suggéré dans le stackoverflow.com/a/10650149/1538221La searchField est déjà rempli avec le champ sélectionné, donc pas besoin de le faire dans cette fonction.
La documentation officielle: http://docs.jquery.com/Plugins/Autocomplete/result#handler
Je ne pouvais pas commenter la réponse de @handsofaten je vais donc ajouter à sa réponse ici. Il peut être plus judicieux d'utiliser valeur plutôt que étiquette que, dans certains cas, mon cas, l'étiquette n'est pas ce que l'utilisateur puisse effectuer une recherche dans la base de données avec.
Vous soumettez votre champ sélectionné en appelant le bouton Soumettre ID dans ce domaine , même si le code est dans une autre page aussi.