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 オブジェクトを使用する必要があります。次のコードを試すことができます:

    $(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 に答える