web-dev-qa-db-fra.com

Que doit faire ENTER?

Sur un formulaire Web, que doit-il se passer lorsque l'utilisateur appuie sur la touche ENTRÉE?

J'écris un formulaire d'inscription - nom, email, mot de passe, bouton d'inscription: le genre de chose habituel. Étant donné que j'utilise JavaScript et que la page n'utilise pas le <form...> tag, j'ai un contrôle total sur ce qui se passe à chaque pression de touche. Je peux lui faire changer le focus, soumettre les données au serveur, valider le contenu du champ, peu importe. Mais qu'est-ce que devrait faire?

Choses que je me demande: ENTER devrait-il amener l'utilisateur au champ suivant (selon la touche TAB)? Est-ce que le fait d'appuyer sur ENTER pendant que le focus est sur le dernier champ soumet le formulaire?

19
David

Entrez doit soumettre le formulaire. L'onglet doit passer au champ suivant.

Les utilisateurs ne l'apprécient généralement pas lorsque le clavier ne fait pas ce qu'ils pensent qu'il devrait.

37
Jeff Sheldon

Le navigateur intégré par défaut est toujours de soumettre lors de la saisie, il est donc devenu une norme de facto.

On intercepte généralement cela et ensuite faire des validations. Si les validations échouent, l'événement de soumission est annulé et le formulaire n'est pas soumis.

En plus: pourquoi n'utilisez-vous pas la balise <form>? Vous devriez vraiment. Cela n'empêchera pas l'exécution de javascript et est sémantiquement meilleur.

9
Steven Ringo

Il est impossible de répondre à cette question sans un test utilisateur. Pourquoi? Parce que ce que Enter doit faire dépend de qui sont vos utilisateurs. Regardez les réponses à cette question jusqu'à présent: le plus voté est un concepteur d'interaction donnant son avis sur la base de son expertise (ce qui le biaise, étant donné que tout ce qu'il peut dire est ce qu'il a déjà vu), puis 11 autres designers ont voté parce qu'ils ont vu des choses similaires et sont d'accord avec ça.

Mais pour vraiment réponse la question, vous devez tester l'utilisateur. Si votre public n'est pas composé de concepteurs d'interface utilisateur qui s'attendent à ce que Enter soumette le formulaire, il est difficile de dire à quoi ils s'attendent sans mesurer ce qu'ils attendent. La meilleure façon de le faire est d'obtenir un nombre statistiquement significatif de personnes de votre public et de voir comment elles se comportent lors de l'utilisation des différentes conceptions du formulaire.

2
Rahul

Juste une opinion de quelqu'un qui n'a pas grandi avec le web (nous sommes nombreux et nous payons pour des trucs). La touche Entrée ne doit publier le formulaire que lorsque tous les champs obligatoires sont remplis; sinon, il devrait passer au champ suivant.

Dans un formulaire de saisie de données plus unique, je ne recommanderais pas d'aller à l'extérieur de ce que les utilisateurs attendent, mais les écrans de connexion sont assez génériques, ont peu de champs et ne devraient pas causer trop de confusion (il n'y a que 3 champs.).

Personnellement, je déteste quand j'appuie sur la touche Entrée par habitude/accident et j'attends que le formulaire se charge.

2
JeffO

Mon heuristique est

  1. Si le formulaire est un nom d'utilisateur et un mot de passe, entrez soumet le formulaire.
  2. S'ils se trouvent sur le tout dernier champ d'un formulaire ou sur le bouton Soumettre, entrez soumet le formulaire
  3. Tous les autres scénarios entrés vont au champ suivant.
2
Glen Lipka

Mon conseil - vous n'avez pas besoin d'entrer.

Les utilisateurs ne savent pas que Enter soumet le formulaire. Cette fonctionnalité ne peut être découverte que par expérimentation. Les utilisateurs n'expérimentent pas, ils ont peur de faire quelque chose de mal, surtout dans les formulaires.

Vous pouvez supprimer en toute sécurité la fonctionnalité Entrée des formulaires longs.

Gardez-le là sous des formes très courtes comme Login, où les utilisateurs avancés ont l'habitude d'appuyer sur Entrée.

1
Miki