Javascript表单验证,检查是否传递了日期
我正在尝试验证一个表单,我几乎完成了。唯一的问题是我无法找到一种方法来验证dates字段,以检查输入的日期是否已过。它必须通过Javascript来完成。。。顺便说一句,以下是HTML:Javascript表单验证,检查是否传递了日期,javascript,html,Javascript,Html,我正在尝试验证一个表单,我几乎完成了。唯一的问题是我无法找到一种方法来验证dates字段,以检查输入的日期是否已过。它必须通过Javascript来完成。。。顺便说一句,以下是HTML: <label for="reservationDate">Date of reservation (DD/MM/YYYY):</label> <input type="text" id="date" name="date" onblur="validateDate(date)"&
<label for="reservationDate">Date of reservation (DD/MM/YYYY):</label>
<input type="text" id="date" name="date" onblur="validateDate(date)">
<span id="dateError" style="display: none;">Please enter your date of reservation in this format DD/MM/YYYY</span>
希望有人能帮上忙:)以下是一些代码,可以让您根据自己的需要给出具体的答案:
function validateDate(x) {
var re = /^(\d{1,2})[-/.](\d{1,2})[-/.](\d{4})$/;
var entered = new Date(document.getElementById(x).value);
var today = new Date();
if( entered > today ) {
document.getElementById(x).style.background ='#ccffcc';
document.getElementById(x + 'Error').style.display = "none";
return true;
} else{
document.getElementById(x).style.background ='#e35152';
document.getElementById(x + 'Error').style.display = "block";
return false;
}
}
以下是经过测试的工作代码:
一些过去的答案是零碎的,但不是全部:
function validateDate(x) {
var re = /^(\d{1,2})[-/.](\d{1,2})[-/.](\d{4})$/;
var entered = new Date(document.getElementById(x).value);
var today = new Date();
if( entered > today ) {
document.getElementById(x).style.background ='#ccffcc';
document.getElementById(x + 'Error').style.display = "none";
return true;
} else{
document.getElementById(x).style.background ='#e35152';
document.getElementById(x + 'Error').style.display = "block";
return false;
}
}