使用此代码检查用户是否超过18岁。但该功能仅警告“你不是18岁以上”。控制台
也没有错误例如: - 23/12/1500 23/12/2008
var dob = document.getElementById("dob").value;
var jsdate = new Date(dob);
var jsdatearray = jsdate.toString().split("/");
var day = jsdatearray[0];
var month = jsdatearray[1];
var year = jsdatearray[2];
var nowdate = new Date();
nowdate.setFullYear(year, month - 1, day);
var maxDate = new Date();
maxDate.setYear(maxDate.getYear() - 18);
if (maxDate < nowdate) {
alert('you are 18+');
}
else {
alert('you are not 18+');
}
答案 0 :(得分:0)
代码中有一些问题。首先,日期未正确导入Javascript。其次,检查日期的条件是向后的。下面的代码应该更好。
var dob = document.getElementById("dob").value;
var jsdatearray = dob.split("-");
var year = jsdatearray[0];
var day = jsdatearray[1];
var month = jsdatearray[2];
var nowdate = new Date();
nowdate.setFullYear(year, month - 1, day);
var maxDate = new Date();
maxDate.setYear(maxDate.getYear() - 18);
console.log(maxDate < nowdate);
if (maxDate > nowdate) {
alert('you are 18+');
}
else {
alert('you are not 18+');
}