入力が特定の特殊文字を受け入れることをユーザーに通知する最良の方法を決定しようとしています。英数字は非常に単純ですが、などの文字に到達すると、明確さが失われるように感じます。そして-。私が試した1つのスタイルはこれです:
Valid characters include A-z, 0-9, and (._-).
かっこが有効な文字をラップするが、かっこが有効でない場合、それらがリストの一部と間違えられるのは簡単すぎるようです。
私が傾いているスタイルは次のとおりです。
Valid Characters include A-z, 0-9, '.', '_', and '-'.
しかし、一重引用符は混乱を招くように感じ、特にリストが大きくなるにつれて、リストから抜け落ちやすくなります。 「より良い」と認められているこの情報を伝える方法はありますか、または実際にこれを完全に行うためのより良い方法はありますか?
クラッターは問題があります。有効な文字を強調するだけで十分な場合があります。例えば。:
有効な文字は[〜#〜] a [〜#〜] -[〜#〜] z [〜#〜]a- z -9。_-。
異なる色で表示することも役立つ場合があります。
ここにいくつかのアドバイスがあります:
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
無効な文字の数は必要な入力に対して常に少ないため、許可されない文字について言及することをお勧めします。これは混乱を減らすのに役立ちます。 Windowsエクスプローラーの例を参照してください。
次のように、各文字タイプのブロックを表示できます。
使用できる文字:A-Z
a-z
0-9
-
_
.
これらは明らかに許可されているはずなので、AからZと、場合によっては0から9は省略します。 追加文字の場合、記号ではなく名前を使用します
アンダースコア、ダッシュ、ピリオドも使用できます。
allvalidまたはallinvalid charactersbeforeユーザーがフィールドへの入力を開始します。これはヒントになるはずです。短く、理解しやすく、簡単にしてください。
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
有効な入力例を示すプレースホルダーのあるフィールドを使用してください。プレースホルダーの例は、入力の優先フォーマットを示しています。これは、たとえば電話番号フィールドで役立ちます。
ユーザーがフィールドに入力したときに、固定ラベルまたはポップアップバブルを表示します。
ユーザーは、入力を開始する前にヒントbeforeを表示するため、必要な値がある場合は別の値を考えることができますエントリへの誤り。これにより、ユーザーが入力を行う前に尋ねる可能性のある質問も解決します:「ここに何を書けばよいですか?入力は正しいですか?」。
「英数字のみ」のようなものではなく、「a-z」のような有効な文字の短い形式を使用してください。
承認された文字を監視および理解する方がはるかに簡単です。 「わかりました。英数字はaからzまでの数字付きの文字です」のような単語の意味を見つける必要はありません。また、「大文字は許可されていますか?」のようなあいまいさを明確にします。
また、許可されている文字リストで太字を使用する @ NonNumericのソリューション をお勧めします。これは、ポップアップメッセージの本質への注意を導きます。
ユーザーがフィールドに入力し、フォーカスが失われた後、フィールドを検証する必要があります。
これのおかげで、ユーザーが入力前にガイドを見逃した場合、ユーザーは入力後にフィードバックを受け取ります。エラー/チェックマークは、入力されたフォームの概要も簡略化します。
これに対処する1つの方法は、最初は何も言わないで、許可されていない文字が入力されたときにユーザーに通知することです。インライン検証を使用して、各文字入力の後に適用する場合、ユーザーは(ほとんど)禁止されている文字を通知する必要さえありません。
それは現場で何をすべきかによる。フィールドに入力する必要があるデータが特定の形式(たとえば、郵便番号など)に従う場合、最終的にそこに入力する必要がある文字のセットは非常に限られます。 Type-Oおよびデータを入力するための非常に代替的な方法はエラーメッセージによって処理され、残りは通知せずにフロートします。
ただし、フィールドは、その形式に関する規則の少ないデータ用に作成されている可能性があります。そのような場合、誤った入力の数は許容できないレベルに達する可能性があり、事前入力の指示が必要です。
インラインエラーメッセージでも、情報テキストが必要な場合でも、「AZ、aZ、0-9」ではなく「文字と数字」を書くほうがわかりやすいので節約できます。特殊文字の乱雑さ。
例:文字、数字、およびこれらの特殊文字(_。-)のみを使用してください
私はあなたの最善の策はテーブルのような構造を使用して各ルールを明確にラベル付けして分離することだと思います:
[〜#〜] css [〜#〜]
table{
border-collapse:collapse;
}
td{
padding:3px 6px 3px 6px;
vertical-align:top;
border:solid 1px #000;
}
[〜#〜] html [〜#〜]
<h3>Allowed characters</h3>
<table>
<tr><td>Alphabet: lower-case and UPPER-case</td><td>A through Z<br>a through z</td></tr>
<tr><td>Numbers</td><td>0 through 9</td></tr>
<tr><td>Punctuation: period, underscore, hyphen</td><td>.<br>_<br>-</td></tr>
</table>
そのため、リストが大きくなった場合でも、将来の文字が以前の文字に対して選択した可能性のある書式設定に干渉することを心配する必要はありません。
すべてのutf8文字を入力として許可するだけであれば、それをユーザーに説明する方法を心配する必要はありません。そしてそれはあなたのアプリ/ウェブサイトでグローバルに行くときあなたに大きな頭痛を節約します。
メールを入力する必要がある場合は、「このメールアドレスはインターネット標準RFCに従って無効です」と書くことができます。それははるかに簡単であり、人々はあなたが意地悪だと考えずにそれらの文字だけを入力する必要がある理由を理解します。
すべての混乱を避けるために、必要なすべての説明情報を事前に提供するために、「ここで有効な文字は何か」のような入力フィールドの近くに「リンク」を置くことができます。人がマウスをリンクに移動する(マウスを上に置く)と、有効な内容を説明する「ツールチップ」が表示されます。
スペースが問題にならない場合は、Wordと実際の手がかりを使用して垂直リストを使用します。
使用できます
いずれの場合でも、有効な文字を説明してくださいbeforeユーザーは、送信後や入力時にではなく、データを入力します。