web-dev-qa-db-fra.com

Comment forcer l'utilisateur à sélectionner un emplacement et non simplement le taper?

Supposons cette forme simple:

enter image description here

Ainsi, l'utilisateur doit saisir les mots clés de l'adresse complète de la réunion.
Pendant la saisie, des suggestions s'affichent (fonction de saisie semi-automatique).
Voici un exemple:

enter image description here

Comme l'utilisateur ne sélectionne que certains mots clés, dans 99% des cas, l'utilisateur sélectionnera la bonne adresse dans la liste.
C'est bien, mais qu'en est-il des autres 1% qui valideraient simplement le formulaire sans sélectionner un élément dans la liste, car ils auraient pu taper une adresse complète en une seule fois.

Pourquoi dois-je m'attendre à ce que l'utilisateur sélectionne l'adresse même s'il l'a bien saisie?
Parce que lorsque sélection, j'ai un processus d'arrière-plan qui associe la latitude/longitude à l'adresse choisie complète.

Je ne veux pas que l'utilisateur contourne ce mappage, sinon la réunion ne pourrait pas être géolocalisée.

Comment mettre en forme le formulaire pour que l'utilisateur comprenne qu'une sélection est obligatoire, afin d'associer la latitude/longitude?

Je pourrais par défaut sélectionner la première sélection (dans le cas où l'adresse tapée correspond), mais il pourrait y avoir des cas où l'adresse tapée ne serait pas complète, conduisant à peu de résultats possibles.

PDATE ------ En fait, la vraie forme est la suivante: (sur un appareil mobile depuis une application native)

enter image description here

Que pouvez-vous suggérer pour augmenter l'UX (malgré le design, pas encore fait :))? Je ne veux strictement pas laisser l'utilisateur cliquer sur Next avant de sélectionner une adresse valide.

En cliquant sur l'élément "New York Times Plaza", la valeur est mise dans le texte d'entrée, en arrière-plan la latitude/longitude est définie, et donc l'utilisateur doit cliquer sur "Suivant":

enter image description here

6
Mik378

Je pense que la solution la plus simple dans ce cas serait de prendre l'adresse que l'utilisateur a entrée et de la mapper à l'emplacement correspondant le plus proche et de le faire savoir afin qu'il soit au courant du mappage et puisse approuver ou rejeter l'adresse.

Amazon fait de même si, s'il ne trouve pas d'adresse, il la valide et affiche l'adresse suggérée et laisse l'utilisateur la confirmer

enter image description here

S'il existe plusieurs mappages, répertoriez les adresses et demandez à l'utilisateur de confirmer la plus proche, comme le fait Google Maps.

enter image description here

11
Mervin

Je vais ajouter mes 2 cents qui je pense donner une réponse directe à votre question (btw désolé pour mon anglais):

Soyez précis: si vous voulez que l'utilisateur fasse quelque chose, dites-le-lui. Vous pouvez donc changer "Adresse de réunion" pour "Rechercher l'adresse de réunion et sélectionner une option ci-dessous".

Diviser pour mieux régner: les utilisateurs aiment être paresseux. Vous pouvez diviser l'entrée de recherche en 3 champs (lieu, ville, état, probablement le pays n'est pas nécessaire) car il est plus laborieux pour l'utilisateur de changer et de taper entre les entrées que d'écrire tout dans le même, ils seront plus susceptibles de sélectionnez une prédiction.

Correspondance visuelle: la couleur de la commande est la même et l'action que vous souhaitez obtenir d'eux.

Je ne leur ai donné aucune autre option: je ne suis pas un devoper mobile, mais je suppose que vous devez désactiver le bouton Suivant jusqu'à ce qu'ils choisissent une option.

enter image description here

4
Alejandro Veltri

J'ai récemment conçu une tête de police en pensant à l'UX, ce qui, je dois l'admettre, a été plus difficile que prévu. Je n'ai pas pu trouver un seul composant qui coche toutes les cases, bien que certains ne manquent que légèrement.

Quoi qu'il en soit, si je comprends bien le problème, vous devriez vraiment toujours avoir une correspondance sélectionnée dans la liste des correspondances, comme ceci:

An image showing an input field with some query entered, and one of the matches being highlighted

Chaque fois que l'utilisateur quitte le champ (événement flou), que ce soit en appuyant sur Entrée, Tabulation ou en cliquant en dehors du champ, la correspondance sélectionnée (et il doit y en avoir une) devient la valeur du champ. Ce type de comportement est souvent décrit comme sélection forcée .

3
Izhaki

Ne leur faites pas "le sélectionner". Si je vous demande des directions vers un lieu de réunion et que vous me dites "C'est sur Washington St, en face de la station Shell." Et vous me dites "Vous ne voulez pas dire que c'est sur Washington St ENSUITE à la station Shell!?", Vous êtes impoli. Pensez à vos interactions avec les gens comme de vraies conversations. Si un serveur vous pose trop de questions sur ce que vous voulez sur votre salade, par exemple, il est impoli. Essayez d'être aussi poli que possible :)

Je pense donc que ce que vous dites est bon. S'il entre la moitié d'une adresse et que votre suggestion apparaît en dessous, et qu'il soumet la requête sans la sélectionner, supposez que c'est ce qu'il voulait. Peut-être indiquer sur la page suivante l'emplacement que vous proposez. Donc, s'il a recherché "1337 Elite Ave NYC" à la page suivante, vous écrivez "1337 Elite Avenue, New York, NY 12345". Donnez-lui une indication de ce qu'il a trouvé.

Et maintenant, une brève pause de notre réponse pour une astuce UX! Essayez d'être aussi accommodant que possible avec les réponses des gens. Dans votre question, vous avez utilisé New York comme lieu. Remplacez la chaîne NYC par New York dans vos requêtes. Beaucoup de gens vont entrer à New York en pensant à New York, par exemple. Et maintenant, revenons à votre réponse.

Essayez de comprendre ce que les gens disent/signifient sans ergoter sur les détails. S'ils regardent une carte du Kansas au lieu de l'Idaho 1% du temps, j'espère que cela indique qu'ils doivent changer l'adresse. Et vous signalez bien qu'il pourrait y avoir deux adresses en proposant vos suggestions déroulantes. Allez simplement avec ce que les gens essaient de dire ... maintenant avec ce qu'ils doivent littéralement sélectionner, surtout si vous pensez que c'est une erreur très rare. Corrigez la requête non formatée pour eux. Reconnaître les termes familiers dans vos domaines d'activité, tels que "NYC".

1
Tyler Langan