如何在日期范围Jquery之间显示多个日期范围

Sun*_*wat 6 jquery twitter-bootstrap-3

嗨,我有一个日期游侠选择器,我想显示为特定日期范围定义的所有日期范围,如下所示:

假设我的日期范围是:01/01/01-01/07/2017,我有一个数组所有日期都是在db.s上面的日期范围之间定义的.数组如下:

$ sub_dates = ['01/01/2017','02/01/2017',.......till 01/07/2017];

因此,如果我点击日期范围选择器上的日期范围,我需要在其上显示所有这些定义的日期($ sub_dates).

var sub_dates = ['01/01/2017','02/01/2017',.......till 01/07/2017];
  $('.lot-calander1').daterangepicker({
    beforeShowDay: function(date){
    var string = $.daterangepicker.formatDate('yy-mm-dd', date);
    return [ sub_dates.indexOf(string) == -1 ]
 }  
}); 
Run Code Online (Sandbox Code Playgroud)

但它没有在日期范围选择器上显示这些日期.请协助可能出现的问题

谢谢你

Sea*_*ing 1

此解决方案使用“invalidDate”来检查日期数组并禁用它们。为了简单起见和比较的目的,我们为日期字符串创建一个新数组并创建它们integers。您可以根据需要替换此方法。

$(function() {
  var sub_dates = ['01/01/2017','01/03/2017','01/25/2017', '02/01/2017'];
  var sub_dates_date = sub_dates.map(function(b) {
    return +(new Date(b));
  });

  $('input[name="daterange"]').daterangepicker({
    isInvalidDate: function(a) {
      return sub_dates_date.indexOf(+(new Date(a))) < 0;
    }
  });
});
Run Code Online (Sandbox Code Playgroud)
<!-- Include Required Prerequisites -->
<script type="text/javascript" src="//cdn.jsdelivr.net/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="//cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/bootstrap/3/css/bootstrap.css" />
 
<!-- Include Date Range Picker -->
<script type="text/javascript" src="//cdn.jsdelivr.net/bootstrap.daterangepicker/2/daterangepicker.js"></script>
<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/bootstrap.daterangepicker/2/daterangepicker.css" />

<input type="text" name="daterange" value="01/01/2017 - 01/31/2017" />
Run Code Online (Sandbox Code Playgroud)

让我们知道。