jQuery DatePicker minDate不工作在Internet Explorer和Safari



我以为我有jQuery的Datepicker工作正常,但后来客户注意到它在IE和Safari(5或6)中不能正常工作。

根据Datepicker文档,您应该:

"将开始和结束日期设置为实际日期(new Date(2009, 1 - 1,26))"

这就是我所做的,它在Chrome和Firefox中运行得很好。

下面是我使用的代码示例,以及一个jsFiddle来说明这个问题。

$(document).ready(function() {
  var startDate = "2013,5,1";
  var endDate  = "2013,7,1";
  function noSundays(date) {
    return [date.getDay() != 0, ''];
  }    
  function datepickerInit(startDate, endDate) {
    $( "#date" ).datepicker({
      inline: true,
      minDate: new Date(startDate),
      maxDate: new Date(endDate),
      beforeShowDay: noSundays,
      dateFormat: 'dd/mm/yy' 
    });
  }   
  datepickerInit(startDate, endDate);   
});

我做错了什么?

在定义startDate和endDate时应该使用Date Object而不是String。您可以尝试以下代码:

    $(document).ready(function() {
  var startDate = new Date( 2013,5-1,1);
  var endDate  = new Date(2013,7-1,1);
  function noSundays(date) {
    return [date.getDay() != 0, ''];
  }    
  function datepickerInit(startDate, endDate) {
    $( "#date" ).datepicker({
      inline: true,
      minDate:startDate,
      maxDate: endDate,
      beforeShowDay: noSundays,
      dateFormat: 'dd/mm/yy' 
    });
  }   
datepickerInit(startDate, endDate);   
});

最新更新