J'ai un champ de texte HTML input
.Lors de la modification d'une entrée de texte, comment effectuer une action JavaScript spécifique en appuyant sur la touche "Entrée" sans le gestionnaire onSubmit du formulaire?
Comment puis-je effectuer un appel JavaScript spécifique en appuyant sur le bouton "Entrée" lors de la modification de ce champ? Actuellement, appuyer sur "Entrée" recharge la page entière, vraisemblablement en raison de la soumission du formulaire entier.
REMARQUE: ce code HTML/JS est simplement inclus en tant que portlet dans une page HTML volumineuse pour un portail, avec un grand formulaire principal enveloppé tout autour de mon code. Par conséquent Je ne peux pas contrôler la forme - ne peut pas changer l'événement onSubmit ou action ou envelopper mon champ INPUT
dans une forme plus petite - sinon la solution serait évidente :)
En outre, une solution qui ne nécessite pas l'ajout d'un visible bouton au formulaire est fortement préférable (je ne me dérange pas d'ajouter un bouton avec display:hidden
si c'est ce qu'il faut, mais ma tentative de le faire n'a pas l'air de fonctionner).
Ceci doit être direct JS - aucune requête/prototype/YUI n'est disponible.
P.S. c'est un champ de recherche et l'action sera un appel à une méthode de recherche JavaScript sur une page existante, si quelqu'un est curieux.
Merci!
+1 - Cela a parfaitement fonctionné dans les tests initiaux - Merci! Si aucune meilleure solution (d'un point de vue esthétique) n'est présentée dans 2 jours, je l'accepterai (rien de personnel, je déteste vraiment vraiment capturer des keyclicks comme ça :) – DVK
Je ne le prends pas personnellement. S'il y a une meilleure solution, j'aimerais la voir aussi, car finalement, la convivialité est ce que vous recherchez. – Buggabill
Cela ne fonctionne pas dans Firefox, pour Firefox, vous devez utiliser var keyCode = event.keyCode? event.keyCode: event.which, puis teste keyCode var. – Cesar