使用日期范围选择器使某些日期/时间无效?

时间:2019-09-12 00:03:28

标签: javascript datetimepicker bootstrap-datetimepicker

我正在使用一个名为Date Range Picker的JavaScript插件(链接:http://www.daterangepicker.com)-我正在构建预订系统,因此我也同时使用了日期选择器和时间选择器。我的代码如下:

$(function() {

    var today = new Date();
    var tomorrow = new Date();
    tomorrow.setDate(today.getDate()+1);
    var nextyear=new Date();
    nextyear.setFullYear(nextyear.getFullYear()+1);

  $('input[name="car-rental-pickup-date"]').daterangepicker({
      autoUpdateInput: false,
      minDate: tomorrow,
      maxDate: nextyear,
      singleDatePicker: true,
      timePicker: true,
      timePickerIncrement: 30,
      autoApply: true,
      linkedCalendars: false,
      showCustomRangeLabel: false,
      locale: {
          cancelLabel: 'Clear'
      },
  });

  $('input[name="car-rental-pickup-date"]').on('apply.daterangepicker', function(ev, picker) {
      document.getElementById("car-rental-pickup-date").value = picker.startDate.format('MM/DD/YYYY');
      document.getElementById("car-rental-pickup-time").value = picker.startDate.format('h:mm A');
      getpricing();

  });

  $('input[name="datefilter"]').on('cancel.daterangepicker', function(ev, picker) {
      $(this).val('');
  });

});

我的公司只允许在周一至周五上午9点至下午4:30以及周六和周日上午9点至上午11:30取车。所以我认为要做的就是使用isInvalidDate函数。

如果我使用此功能,则可以成功阻止这样的一天(阻止2019年9月15日):

isInvalidDate: function(date) {
        if (date.format('YYYY-MM-DD') == '2019-09-15') {
            return true; 
        }

但是当我尝试使用这种方法阻止所有星期天时,像这样:

isInvalidDate: function(date) {
        if (today.getDay() == 0) {
            return true; 
        }

它不起作用。有人可以帮我解决这个问题吗?另外,我将如何处理停电时间?我没有看到任何相关文档。

0 个答案:

没有答案