我想插入今天的日期,而不是之前的日期才能插入到数据库中,但它需要从明天开始,而不是今天的日期
var now = moment(new Date());
var mDate = moment(new Date($('.meetingDate').val())).format("M/D/YYYY");
//now.format("yyyy/mm/dd");
var duration = moment.duration(now.diff(mDate));
var days = duration.asDays();
//alert(now + mDate);
alert(days);
if (days > 0) {
e.preventDefault();
alert("Please enter valid date");
$validation = false;
}
答案 0 :(得分:0)
这是因为当你计算时,它已经完成了这一天,并在第二天开始计算。因此,如果超过凌晨12:00:00,您需要使用前一天进行计算。所以,你要做的是:
var myDate = new Date();
if (myDate.getHours() != 0 && myDate.getMinutes() != 0 && myDate.getSeconds() != 0 && myDate.getMilliseconds() != 0)
myDate.setDate(myDate.getDate() - 1);
var now = moment(myDate);
var mDate = moment(new Date($('.meetingDate').val())).format("M/D/YYYY");
//now.format("yyyy/mm/dd");
var duration = moment.duration(now.diff(mDate));
var days = duration.asDays();
//alert(now + mDate);
alert(days);
if (days > 0) {
e.preventDefault();
alert("Please enter valid date");
$validation = false;
}
这应该可以解决。
或者以更简洁的方式,您还可以将新日期的时间设置为0:00:00:0000
。
var myDate = new Date();
myDate.setHours(0)
myDate.setMinutes(0)
myDate.setSeconds(0)
myDate.setMilliseconds(0)