コードに小さなバグがあります。ユーザーが日付フィールドを選択すると、カレンダーがポップアップ表示され、日付をクリックできますが、検証で空であるかのようにエラーが発生します。
ユーザーがもう一度クリックしてエラーが消えた場合、または [送信] をクリックした場合、エラー テキストがまだ表示されていても、フォームは正常に処理されます。
このルーズエンドをクリーンアップしたいのですが、このコードの一部は私自身のものではないため、問題を特定できませんでした.
フォーム フィールドと検証関数は以下にあり、作業コピーは jsfiddle にあります。
フォームコードは
<label class="control-label" for="date">Date:</label>
<input type="text" name="date" id="date" readonly onClick="GetDate(this);"/>
<button type="submit" class="btn btn-giant btn-primary">Submit</button>
検証ステートメントは
jQuery(function () {
jQuery("#date").validate({
expression: "if (VAL) return true; else return false;",
message: "Please select a date."
});
});
jsfiddle に実用的なサンプルを投稿しました。
http://jsfiddle.net/andrewgledhill/NdHGH/1/embedded/result/
ありがとう。