1

我以为我的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);   

});

我做错了什么?

4

1 回答 1

5

在定义 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);   

});
于 2013-05-01T18:13:05.097 回答