我的网页中有两个日期字段1- fromDate和2- toDate。如果b / w日期差异大于7,我想限制提交日期。
我已经应用了我的脚本但没有工作......
var d1 = new Date();
d1 = document.forms["From"]["fromDate"].value;
var d2 = new Date();
d2 = document.forms["From"]["toDate"].value;
if ((d2 - d1) > 7) {
alert("Please enter valid date range");
return false;
}
最终我想要的:如果用户输入日期且差异大于7天,则会显示警告。 示例:FromDate = 01/01/2016和ToDate = 01/10/2016 如果ToDate - FromDate然后它在提交时显示警告
在上面的例子中(ToDate = 01/10/2016) - (FromDate = 01/01/2016)= 9
答案 0 :(得分:0)
尝试类似
的内容 var d1 = new Date(document.forms["From"]["fromDate"].value);
var d2 = new Date(document.forms["From"]["toDate"].value);
if ((d2 - d1) / 1000 / 3600 / 24 > 7) {
alert("Please enter valid date range");
return false;
}
每秒1000 - 1000毫秒
每小时3600 - 3600
每天24-24小时
答案 1 :(得分:0)
日期选择器通常返回格式为MM / DD / YYYY的字符串。
此函数返回YYYYMMDD整数。假设当有一个数字(例如01,而不是1)时,日期填充为零。通常有一个日期选择器的设置,以返回零填充日期。
function dateFormatYYYYMMDD( num ) {
return parseInt( num.toString().slice(6,10) + num.toString().slice(0,2) + num.toString().slice(3,5) );
};
然后找出差异,从第二个日期减去第一个日期。 e.g。
d1 = "12/01/2016";
d2 = "12/07/2016";
diff = dateFormatYYYYMMDD(d2) - dateFormatYYYYMMDD(d1);
在此示例中,diff
包含值6
。
唯一的障碍是差异超过一个月,因为一个月可以在不同的日子结束。