如何检查 datetimepicker jquery 中的日期范围?

How to check date range in datetimepicker jquery?

我在 https://github.com/xdan/datetimepicker 使用了 datetimepicker,它太酷了,我想在一周(7 天)内检查它的日期范围,我尝试

               if ($("#FromDate").val() + 7 > $("#ToDate").val()) {
                   alert("Please choose a week");
                }

一些案例的例子:

Fromdate: 27/10/2016 Todate: 31/10/2016 : OK
Fromdate: 27/10/2016 Todate: 2/11/2016 : OK
Fromdate: 27/10/2016 Todate: 3/11/2016 : show alert

不过好像不行。

我已经更新了答案并且它工作正常。点击此处jsFiddle

var fromDate = new Date($("#FromDate").val());
var sevenDate = new Date(fromDate.setDate(fromDate.getDate() + 7));
var toDate = new Date($("#ToDate").val());

if (sevenDate > toDate) {
    alert("Please choose a week");
}

方法是使用 new Date() 将日期字符串转换为日期对象
但是 有一个问题,如果你使用 'dd/mm/yy' 格式,当你转换时它不会像日期一样有效 它变成 new Date() 只是重新排列它的格式 inyo 一个有效的格式 我使用格式 'yy-mm-dd'

HTML

Start: <input id="from" type="text" /><br />
End: <input id="to" type="text" /><br />
<input id="thesubmit" type="button" value="Submit" /> 

JAVASCRIPT

$(document).on('click', '#thesubmit', function() {
    var from = new $("#from").val().split('/');
  var to = new $("#to").val().split('/');
  from = new Date(from[2]+'-'+from[1]+'-'+from[0]);
  to = new Date(to[2]+'-'+to[1]+'-'+to[0]);

  if (new Date(from) == 'Invalid Date' || new Date(to) == 'Invalid Date') {
    return alert('Select a valid date');
  }

  var timeDiff = Math.abs(to.getTime() - from.getTime());
        var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); 
        if (diffDays >= 7) {
    alert('It is 1 week range');
  }
})

DEMO