Webサイトに電話番号と社会保障番号の 寛容なフォーマット パターンを実装しています。
基本的には、ユーザーが自分の(米国)電話番号を入力するという考え方です。
5558675309
システムは、再フォーマットによって入力を理解するというフィードバックを提供します。
555-867-5309
「エコーバック」はいつ発生しますか?
ぼやけるまで書き換えないでください。誰かが7桁を入力し、最初に移動して '180'を追加するかもしれません...市外局番で2番目の0を取得する前に突然、コードが書き直され、カーソル位置が失われます。
コントロールを離れるときは常に入力をフォーマットします。カーソルがまだそこにあるときは決してフォーマットせず、情報を編集または追加している可能性があります。これは、ほぼすべてのコントロール(電話番号だけでなく)にも当てはまります。
ライブ検証を実行できます(パスワードの品質について進行中のアイデアを提供するパスワードコントロールなど)。しかし、ライブの書き換えは決してしないでください。
厳密にはユーザーとして、入力が一貫して動作することを望みます。ぼかしに対して他の変換や検証を行う場合、ぼかしに対してもこのフィールドでその処理を実行したいと思うでしょう。しかし、他のすべてのフィールドが通常検証またはフィードバックを即座に提供する場合(たとえば、必要なフィールドからすべてのテキストをクリアすると、すぐに「赤」になります)、おそらくすぐに変換を実行する必要があります。
更新:Myrddin Emrysの回答にも同意します。