web-dev-qa-db-ja.com

フォーム検証の推奨動作は何ですか?

フォーム検証の実際に望ましい動作は何ですか?検証はいつ行うべきですか?

  • ユーザーが「保存」をクリックしたとき
  • 入力フィールドがフォーカスされていない場合
  • ユーザーが入力すると

長い形式と短い形式、ウィザードなどで、優先される方法は同じですか?どう思いますか?

(フォームはデスクトッププラットフォームのみになります)

36
efrethe

一般的に、

検証を実装する方法は、フォームの固有のニーズによって異なります。ただし、一般に、ユーザーの入力が正しくない場合、システムは、エラーの修正に役立つ識別可能で明確なメッセージを提供して、ユーザーに通知する必要があります。

から https://www.nngroup.com/articles/indicators-validations-notifications/

もっと要点は、

提供されたデータの成功/失敗について通知する適切なタイミングは、ユーザーが情報を送信した直後です。提供されたデータの正確さをすぐにユーザーに通知するインラインフォーム検証により、コンバージョン率が向上します。

から https://designmodo.com/ux-form-validation/

フォームで多くの作業をしているので、ユーザーがエラーを修正するまで入力フィールドがフォーカスされていないときは、それが最も煩わしい方法であると思います。

  • ユーザーが「保存」をクリックしたとき=>検証するには遅すぎます
  • 入力フィールドがフォーカスから外れている場合=>ちょうどいいタイミングです
  • ユーザーが入力するように=>検証するには少し早すぎます

ツイッターはそれがかなり正しい

Twitter

37
Dimitra Miha

検証は入力フィールドごとに行う必要があります。

  • ユーザーが回答を入力し終えたとき:フィールドがフォーカスされたとき、またはユーザーが入力を完了したと見なす特定のタイムアウトの後(推奨- ここ
  • フォーカスがある間、入力された情報は検証されず、余分な文字は検証を続行しません:たとえば、ユーザーは無効な文字を入力すると、フィールドを検証に合格させない
4
Alvaro

ユーザーには、エラーについて通知する必要がありますできるだけ早く、すべてのタイプのフォーム(ウィザード、長いフォームなど)。

ユーザーが入力しているときにエラーフィードバックを提供できる場合は、それを行ってください。これにより、ユーザーはエラーをより効率的に修正できます。これは、カーソルと彼の心がエラーの件名にあるためです。

エラーをユーザーに通知することとユーザーを停止するの違いを強調しなければなりません。ユーザーは入力中にエラーについて通知される場合がありますが、フォームが送信されるか、フィールドがフォーカスされなくなるまで停止されません。ユーザーを停止するタイミングは、エラーの重大度、フォームの使用例、フォームのタイプ、およびその他の多くの要因によって異なります。

ただし、まず最初に、エラーを防止する、つまりリストボックスを使用してみてください。

3
DesignerAnalyst

あなたが彼らに集中している間にフィードバックを提供する

ここでの答えが示すように、これは微妙なバランスです。フォーム全体を完了した後にユーザーに通知すると(一部のアプリ/サイトはまだそうです)、フローが中断されます。

集中力を壊さない

フォーム全体に段階的に通知するという「ジャストインタイム」の原則に従うと、フラストレーションが少なくなり、認知的負荷が軽減されます。これは通常インライン検証と呼ばれます。

あなたは彼らに知らせたい:

  • フィールドがまだフォーカスされている間
  • 彼らの後にthink彼らは意味のある何かを入力しました
  • フォーカスが移る前に

推測してテストする

ジャストインタイムの情報の問題点は、ユーザーが入力/思考​​を終えたときに完全にを特定できないことです。

早すぎると、問題のフィールドへの集中力が失われます。
遅すぎて、すでに次のものに取り掛かっています。フォーカスが再び壊れました。

focus + typing + pauseの遅延について知識のある推測をしてから、実際にテストします。プロトタイプでテストし、本番環境でメトリック(フォームの放棄、入力エラー)を監視し続けます。幸せな中層に到達したら微調整します。

2
plainclothes

痛い。最初、私は一つの選択肢を確信しました。しかし、私の意見では、答えをより慎重に考えることはDepends、and allです。

1.入力フィールドに依存

a。ユーザータイプとして

入力にはさまざまなタイプがあり、一部の入力には異なる検証が必要です。

  • ユーザーが入力するときにパスワードを検証できます。たとえば、サイトが「123」などのオンザフライで検証できる単純なパスワードを受け入れない場合。これは「パスワードストレート」エバリュエーターで確認できます。

  • ユーザー名の選択は、ユーザータイプとしてオンザフライで検証することもできます。

  • 電話番号を文字、スラッシュ、スペースなどの数字以外の文字で入力すると、電話番号を検出したときに警告が表示される可能性があります。

b。ユーザーがフィールドを離れたとき

これは、たとえば、無効なメール、1文字のみの名前、無効な郵便番号など、いくつかの入力ミスの可能性があることを示します。

c。送信または次のステップ

「送信または次のステップ」ボタンが空の必須フィールドをマークする必要があることは、少し明白です。


2.追加のヘルプ

一部のフィールドには、場所、郡、おそらく州などの一般的なものを入力するときに、オートコンプリートなどの追加のヘルプがあります。


3.異なる強度の検証警告

私がここで探求したいのは、たとえば、メールを入力するとき、フィールドが背景として薄い灰色である場合や、メールが有効な場合(@と最後の.something)白に変わります。

しかし、空のフィールドを検証する場合、この同じフィールドが強い怒りの赤に変わる可能性があります。


4.最初から適切な配色を選択します

私の携帯電話に現金を追加するには、携帯電話プロバイダーのページを常に使用する必要があります。

しかし、彼らが持っている「モダンでクールな洗練された」配色は、「利用規約に同意します」のチェックボックスをほとんど完全に見えなくします。最初からそれを見ることができればマークすることを保証します。

0
Rafael