我正在尝试使用具有以下限制的日期输入框。日期必须是今天或更早,但不超过1年。我有以下几行:
if (myFDGDT - todayDate > 0 || (myFDGDT - todayDate)/86400000 < -365)
当某些人在今天的日期之后输入日期时,其中的第一部分会创建适当的警报。不确定将入场限制在一年前的最佳方式。尝试了一些项目,但上面只是我上次尝试的一个例子。这也是在依赖项中编写的,而不是在我们的条目客户端的全局JavaScript中。
答案 0 :(得分:1)
这是一个片段,它将生成一年前的Date对象。您可以根据需要使用大于/小于运算符进行比较。
var oneyear = new Date('01/01/1971'); // from unix epoch
var now = new Date();
var oneyearago = new Date(now - oneyear);
alert(oneyearago);
答案 1 :(得分:0)
如果您在应用程序中经常操作日期,则应考虑使用momentjs库。对于您的问题,解决方案将类似于:
var momentdate = moment(date);
if (momentdate.isAfter(momentdate.add(1, 'year') ||
momentdate.isBefore(momentdate.startOf('day')) {
// Invalid date?
}
希望这有帮助。