0

我们正在使用引导日期选择器(https://github.com/uxsolutions/bootstrap-datepicker)设置签入和签日期。引导日期选择器设置最小范围

我们需要能够在日期选择器设置一个“最小范围”为具有最小晚住宿性能。

遗漏的需求:

  • 不允许停留天数小于属性夜间最低。
  • 不允许结帐日期在签入日期之前。

因此,如果游客选择的2017年12月1日签入日期和财产的最小晚住宿3晚,访问者不应该被允许选择2017年12月2日,12/03/2017。下一个晚上他们去结帐应该是12/04/2017。

,我没有看到,这是与此日期选取一个简单的选择。尽管如此,我确实已经看到它已被添加为功能请求。 https://github.com/uxsolutions/bootstrap-datepicker/issues/970

我已经通过使用disabledDates和setDatesDisabled日期构建了可能能够工作的开始。然而,我似乎无法弄清楚为什么这些禁用日期在选择新的开始日期时不工作或解雇。我认为我应该能够将新设置的禁用日期与已发布的日期结合起来。

$(function($) { 

    var today = new Date(); 
    $('.input-daterange').datepicker({ 
     daysOfWeekHighlighted: "0,6", 
     autoclose: true, 
     todayHighlight: true, 
     startDate: today, 
     datesDisabled: ['10/1/2017','10/2/2017','10/3/2017','10/4/2017','10/5/2017','10/6/2017','10/7/2017','10/8/2017','10/9/2017','10/10/2017','10/11/2017','10/12/2017','10/13/2017','10/14/2017','10/15/2017','10/16/2017','10/17/2017','10/18/2017','10/19/2017','10/20/2017','10/21/2017','10/22/2017','10/23/2017','10/24/2017','10/25/2017','10/26/2017','10/27/2017','10/28/2017','10/29/2017','10/30/2017','10/31/2017'], 
    }); 

}); 

// Set end date to minimum nights. 
$('#start').on('change', function() { 

    // Set minNights. 
    minNights = 3; 

    start = $('#start').datepicker('getDate'); 
    end = moment(start).add(minNights, 'day').toDate(); 
    $('#end').datepicker('update', end); 

    $('.input-daterange').datepicker('setDatesDisabled', [ $('.input-daterange').datepicker('setDatesDisabled', ['12/02/2017', '12/03/2017']);]); 

}); 

是否有另一个日期选择器,这已经内置已经?或者,有没有一种简单而干净的方法将缺少的需求添加到引导日期选择器?

简单的jsfiddle

回答

0

试试这个

$(function() { 
    $('#datepicker').datepicker({ 
     dateFormat: 'yy-mm-dd', 
     showButtonPanel: true, 
     changeMonth: true, 
     changeYear: true, 
yearRange: '1999:2012', 
     showOn: "button", 
     buttonImage: "images/calendar.gif", 
     buttonImageOnly: true, 
     minDate: new Date(1999, 10 - 1, 25), 
     maxDate: '+30Y', 
     inline: true 
    }); 
}); 
相关问题