月、日、年の入力欄が分かれています。現在の日付正規表現はうるう年を考慮していません。私はうるう年を説明するために他の正規表現を追加しようとしましたが、成功しませんでした。あなたの助けが大変ありがとうございます。うるう年のためにRegExを変更するには何が必要ですか?
var bmonth = Apperyio('register_birthdaymonth').val();
var bday = Apperyio('register_birthdayday').val();
var byear = Apperyio('register_birthdayyear').val();
var dateString = (bmonth + "/" + bday + "/" + byear)
var date_regex = /^(?:(0[1-9]|1[012])[\/.](0[1-9]|[12][0-9]|3[01])[\/.](18|19|20)[0-9]{2})$/;
if (!(date_regex.test(dateString)))
{
errorMsg = errorMsg + "1";
document.getElementById("bdayError").innerHTML = "Please enter your birthday.";
}
入力があなたのために失敗した日付? –
うるう年は正しく検証されません。例:02/29/1991を許可します。 – timmyusa
正規表現が必要ですか?あなたは、日付オブジェクトを使用することができます。同様に:http://jsbin.com/kamebibena/3/edit?js,console,outputこのようにして、過去の日付もかなり簡単に説明できます。 – John