検証したい生年月日フィールドがあるとします。
日月年
ここで、これら 3 つのフィールドをすべて同時に検証したいと思います。つまり、ユーザーがまだこれら 3 つのフィールドのいずれかにフォーカスしている場合は、まだ検証しないでください。彼が全員を離れたら、日付を確認します。
とても簡単に思えます、私はできます:
$('#dayInput').is(':focus')
3 つのフィールドすべてについて、そのうちの 1 つが true かどうかを確認します...しかし、これは非常に興味深い方法で失敗します。jQuery検証プラグインは、「inFocus」イベントと「out of focus」イベントの間の要素を検証しているようです。
そのため、年入力から月入力に移動すると、これら 2 つのイベントの間に 3 つの入力のうちどれも「フォーカス」されておらず、ユーザーが 3 つの dob 入力を離れたかどうかはわかりません。そのうちの。
これを回避する方法はありますか?
PS 登録が遅すぎるため、追加しようとしている余分なメソッドでイベント ハンドラーを登録することはできません。私がその日の入力にいるとします。そのままにしておきます => 検証が開始され、ハンドラー (フォーカスとぼかしが登録されます) が、手遅れで、前のイベントがスキップされます。
ここで意味をなすことを願っています。