angularjs déplacer le focus au prochain contrôle sur entrée
Quelle est la meilleure façon, au moment de frapper, entrer à l'intérieur d'une forme, le focus à passer à l'entrée suivante au lieu d'envoyer le formulaire avec angularjs.
J'ai un formulaire avec un grand nombre de domaines, et les clients sont utilisés pour frapper enter pour passer à l'entrée suivante (en venant depuis les applications de bureau). Le angularjs enregistre le formulaire lorsque l'utilisateur appuie sur entrée. Je tiens à changer cette situation. Est-il possible ?
Je suggère la rédaction d'une directive pour cela.
OriginalL'auteur darpet | 2013-08-06
Vous devez vous connecter pour publier un commentaire.
Je suggère de faire un custom de la directive. Quelque chose comme cela. Je n'ai pas testé cette.
Quelque chose comme ça devrait fonctionner. Vous pourriez avoir à l'ajustez quelque chose. Bonne chance.
J'ai édité et il fonctionne parfaitement. Je l'ai testé. Bam. Il suffit de coller le mot "focus" en tout des éléments d'entrée que vous souhaitez travailler de cette façon.
Merci je vais l'essayer, il semble que ce soit la bonne façon.
Un seul changement, utilisez ce pour une version utilisable. elem.nextAll('input').(premier).focus();
Argyle: Mais qui nécessite jQuery.....
OriginalL'auteur Zack Argyle
Créer un personnalisé directive:
Avait à faire quelques réglages. Un:
e.srcElement
est spécifique à vieux IE donce.srcElement || e.target
œuvres au lieu.pe === e.srcElement
doit êtrepe === elem
etpe.focus()
devientangular.element(pe).focus()
N'hésitez pas à mettre à jour le post 😉
Post mis à jour avec votre suggestion. Tx!
Génial. Les travaux de cette. Mon seul problème, c'est qu'il ne fonctionne pas avec select / md-sélectionner. Pouvons-nous faire quelque chose à ce sujet?
OriginalL'auteur Eduardo Cuomo
J'ai essayé cette solution. Comme annoncé, il a besoin de quelques ajustements. Voici ce qui a fini par travailler pour moi:
Noter que les afin d'obtenir le
:focusable
pseudo, vous aurez besoin de faire référence à JQueryUI. (la dernière version 1.11.4 a fonctionné pour moi)OriginalL'auteur lipidfish
C'est la directive j'ai fini avec (grâce à Zack Argyle et Oleg):
app.la directive("nextFocus", function () {
OriginalL'auteur wolcy97
En fonction de la réponse par wolcy97, mais en utilisant seulement angulaire
OriginalL'auteur jecxjo
Pur JavaScript Entrer comme TAB
OriginalL'auteur Cleiton Hoerlle
OriginalL'auteur Kulanthai velu G
OriginalL'auteur Kulanthai velu G
Sur Enter appuyer sur elle se déplace vers l'élément suivant de DOM, mais l'élément d'id pour définir le focus
Merci à tous..
OriginalL'auteur Nikhil Surkar