我的表单页面(HTML)需要用户的DOB。格式为:dd-mm-yyyy,数据类型为文本。例如1990年4月21日是1990年4月21日。我的作业要求用户必须大于18岁,但不能大于80岁。
我的Javascript需要读取用户的输入并计算当前日期减去用户的输入,以检查年龄是否符合条件。
我希望DOB的输出允许或限制表单的页面。
年龄=当前日期-用户的DOB 如果年满18岁,请转到下一页;如果年满18岁,请拒绝。 如果年龄在80岁或以上,则无法进入下一页。
答案 0 :(得分:0)
关于更改日期please read here
的格式
function get_age(born, now) {
var birthday = new Date(now.getFullYear(), born.getMonth(), born.getDate());
if (now >= birthday)
return now.getFullYear() - born.getFullYear();
else
return now.getFullYear() - born.getFullYear() - 1;
}
document.getElementById("dateInput").addEventListener("change", function() {
var input = this.value;
var dateEntered = new Date(input);
var now = new Date();
var birthdate = input.split("-");
var born = new Date(birthdate[0], birthdate[1]-1, birthdate[2]);
age=get_age(born,now);
console.log(birthdate[2]+" : "+birthdate[1]+" : "+birthdate[0]);
console.log(age);
if (age<=18)
{
alert("Input Error - Age should be greater then or equal to 18");
return false;
}
});
Birthday: <input type="date" id="dateInput" name="bday">