生年月日フィールドで実行される非常に単純なjQuery検証メソッドがあります。入力された日付 (HTML5 input type=date フィールドから) が現在の日付より前かどうかを確認するだけです。そうである場合は有効であり、そうでない場合は無効です。Chrome では問題なく動作しますが、何らかの理由で Safari では失敗し、無効な日付が入力されたかのように動作します。コードは次のとおりです。
$.validator.addMethod("bornBeforeToday", function(value, element) {
// For DOB, check that value given is before the current date
if (value.length > 0) {
return Date.parse(value) < new Date();
} else {
return true;
}
}, "Date must be less than than current date");