web-dev-qa-db-fra.com

Meilleure option pour avertir l'utilisateur d'un nom existant

Si un utilisateur souhaite renommer un fichier, il double-clique sur le nom du fichier et le nom devient modifiable.

Si l'utilisateur tape un nom de champ déjà existant et appuie sur "Entrée" ou clique en dehors de la zone d'édition, il pourrait y avoir cette option:

• Aucun message d'avertissement n'apparaît et le système change le nom lui-même en un nom correct et enregistre le nouveau nom automatiquement.

Je suis assez confus quant à la meilleure approche pour une bonne expérience utilisateur.

1
Ayse

Avez-vous déjà pensé à indiquer la disponibilité lors de la frappe? Ensuite, le rejet du nom ne surprendrait pas l'utilisateur et ne serait pas pris au piège en mode édition.

enter image description here

4
KMSTR

"Mais pour cela, nous devons surveiller en continu l'entrée utilisateur avant même d'appuyer sur" Entrée "

Le concepteur ne devrait jamais penser de l'esprit du développeur

Je voudrais suivre ce qui suit:

Vous commencez à taper "Plan ...." et le système donnera une suggestion automatique comme le plan ID1, le plan ID2, au cas où le plan ID1 est déjà pris. Un petit texte vert "déjà pris" sera affiché à droite.

Le glisser-déposer n'est pas non plus une bonne idée si vous avez plus de 20 champs.

2
Hemchandra

Prenez une minute pour réfléchir à qui sont vos utilisateurs. Dans quels cas sont-ils plus susceptibles de retaper le même nom par accident? Dans ces cas, sont-ils plus susceptibles de vouloir qu'un nom très similaire soit appliqué automatiquement (je doute que vous puissiez trouver une méthode de transformation qui s'applique à tous les noms de champ de manière élégante ..), pour supprimer ou fusionner l'élément désormais en double qu'ils étaient renommer, pour lui donner un nom différent ou pour revenir à l'étape précédente (un cas pour lequel j'ai du mal à trouver une justification, autre que la trouvabilité: au moins, il est facile de comprendre quelle transformation s'est produite).

Essayez de décider quels sont les résultats souhaitables à forte probabilité, puis réfléchissez en ces termes: au moment où l'utilisateur a fini de taper ou de modifier, quelle rétroaction/action fournit le coût d'interaction le moins cher pour atteindre le les résultats les plus souhaitables de l'utilisateur?

Par exemple, supposons que mes utilisateurs souhaitent parfois a) fusionner les deux champs portant le même nom, b) taper un nom entièrement nouveau et c) revenir au nom précédent. Ils ont un clavier dans cette configuration.

Je voudrais revenir au champ en mode édition, sélectionner tout le nom du champ afin que les utilisateurs puissent le supprimer en un seul coup de clavier et en taper un nouveau tout de suite. Je fournirais les capacités de fusionner et de revenir au nom précédent avec des liens spécifiques affichés sur un popover (pensez au popover "undo" de GMail lors de la suppression des e-mails, http://www.svennerberg.com/2008/07/no -undo-redo / ). En plus de cliquer ou appuyer sur Echap après que le conflit de noms a été mis en surbrillance, vous devez revenir à l'option précédente.

Un deuxième exemple: maintenant mon utilisateur est sur un appareil tactile, la saisie est pénible et les noms de champs sont composés de plusieurs mots longs. Ajoutez la condition qui vous fait penser que les utilisateurs peuvent créer plusieurs champs avec un libellé similaire. Maintenant, le résultat souhaitable serait de conserver ce qui a été tapé jusqu'à présent et de le modifier soi-même. Il serait désastreux de supprimer tout ce que l'utilisateur a tapé. La suggestion de KMSTR est probablement la meilleure que vous puissiez faire.

De manière générale, c'est presque toujours une mauvaise idée de faire quelque chose de différent de ce que l'utilisateur attend sans le lui dire. Ils pourraient le remarquer beaucoup plus tard après avoir commencé à faire d'autres choses en supposant que vous respectiez leur intention initiale (voir le concept de rupture d'interaction pour plus d'informations).

1