我最近开始研究 Javascript。我正在测试的是检查有效格式的 DoB。下一步将检查年龄。
下面是我的 HTML 代码
<form name="ProcessInfo" action="#" method="POST" enctype="multipart/form-data" target="_self" onsubmit="return checkForm();">
.
.
.
.
<br>
<label for="txtDOB">Date of Birth:* </label>
<input id="txtDOB" type="text" name="txtDOB" size="12">
format: ##/##/####
<br>
.
.
.
</form>
.
.
然后我在我的 .js 文件中做了以下操作
var errMessage = "";
function checkForm() {
validateName();
validateSurname();
carSelect();
validateDOB();
if (errMessage == "") {
} else {
alert(errMessage);
}
}
...
function validateDOB()
{
var dob = document.forms["ProcessInfo"]["txtDOB"].value;
var pattern = /^([0-9]{2})-([0-9]{2})-([0-9]{4})$/;
if (dob == null || dob == "" || !pattern.test(dob)) {
errMessage += "Invalid date of birth\n";
return false;
}
else {
return true
}
}
我试图用正则表达式检查它是否有效,但即使我输入的日期正确,我也总是收到警告。以及如何将 DD/MM/YYYY 分开来计算年龄?
最佳答案
如果要在格式中使用正斜杠,则需要在正则表达式中使用反斜杠进行转义:
var pattern =/^([0-9]{2})\/([0-9]{2})\/([0-9]{4})$/;
关于Javascript 日期验证 (DD/MM/YYYY) & 年龄检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19820257/