Bootstrap Datepicker禁用日期不起作用

时间:2016-05-04 12:10:43

标签: javascript jquery twitter-bootstrap jquery-ui datepicker

我想尝试一系列.datepicker()选择和Bootstrap Datepicker

  1. 我想禁用某些日子,但无法正常工作,
  2. 可以说,今天是星期三(2016年5月4日),我想限制第一个星期五(2016年5月6日)之前的日子。为此,我从用户那里获得一周的信息。如; 用户选择星期六。所以日历应该从第一个星期六开始,即使今天是星期三,用户将无法选择前几天。
  3. 以下是我的.datepicker()观点:

    <div class="col-sm-2 col-xs-4">
      <div class="form-group">
        <div id="date-from" class="input-group date">
          <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
          <input type="text" class="form-control">
        </div>
      </div>
    </div>
    <div class="col-sm-2 col-xs-4">
      <div class="form-group">
        <div id="date-to" class="input-group date">
          <span class="input-group-addon"><i class="fa fa-calendar"></i></span>
          <input type="text" class="form-control">
        </div>
      </div>
    </div>
    

    这是js代码:

    var nowTemp = new Date();
    var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
    
    var checkin = $('#date-from').datepicker({
      //format: 'dd/mm/yy',
      datesDisabled: ['05/06/2016', '05/21/2016'], // not working
      startDate: '+0d',
      weekStart: 1,
    
      beforeShowDay: function(date) {
        return date.valueOf() >= now.valueOf();
      },
      autoclose: true
    
    }).on('changeDate', function(ev) {
      if (ev.date) {
        if (ev.date.valueOf() > checkout.datepicker("getDate").valueOf() || !checkout.datepicker("getDate").valueOf()) {
          var newDate = new Date(ev.date);
          newDate.setDate(newDate.getDate());
          checkout.datepicker("update", newDate);
        }
      } else {
        checkout.datepicker("update", "");
      }
      $('#date-to')[0].focus();
    });
    
    
    var checkout = $('#date-to').datepicker({
      format: 'dd/mm/yy',
      weekStart: 1,
      //endDate: '+2d',
      beforeShowDay: function(date) {
        if (!checkin.datepicker("getDate").valueOf()) {
          return date.valueOf() >= new Date().valueOf();
        } else {
          return date.valueOf() > checkin.datepicker("getDate").valueOf();
        }
      },
      autoclose: true
    
    }).on('changeDate', function(ev) {});
    

0 个答案:

没有答案