3

次のマスクを持つ単純なテキスト ボックスがあります。

$('#txt_DateOfBirth').mask('99/99/9999');

マスクと正確に一致しない適切な日付 (つまり、1 桁の月または日) を使用してプログラムで読み込まれることがあります。そのような日付がロードされている場合、入力ボックスにフォーカスがあるとすぐに に戻ります__/__/____。変更が行われたかどうかにかかわらず、入力ボックスがフォーカスを失うと、動的にロードされた日付が戻ってきます。それは次のように設定されています:

$('txt_DateOfBirth').val(date); // example: date holds "12/1/1949" as string

日付がマスクと完全に一致しないため、マスクされた入力が壊れているようです。マスクの途中にオプションの文字を追加するにはどうすればよいですか?

4

1 に答える 1

5

どのプラグインを使用していますか? ブッシュの入力マスクを使用していると思います。コメントで行ったように、独自のマスクを定義できますが、オプションの部分を定義できるとは思いません (ケースごとにマスクを定義する以外に)。

RobinHerbotsマスク (これは、Bush のマスクに基づいているため、簡単に変換できるはずです) を参照してください。

Robin のマスキング プラグインの優れた点は、1 つのマスク (または複数のマスク) でオプションの文字を定義できることです。

次のことができるはずです(括弧内の文字はオプションです)

$('txtDateOfBirth').inputmask({ mask: '[9]9/[9]9/9999' });
于 2013-12-16T18:46:20.803 に答える