7

datepicker が BST に到達するまで正常に動作する次のコードがあります。

var i;
function showEventDates(date) {
  for (i = 0; i < startDates.length; i++) {
    if (date.getTime() == startDates[i]) {
      return [true, 'eventDay'];
    }
  }    
  return [false, ''];
}
var startDates = new Array();

$("select.startdates").find("option").each( function() {
  startDates.push(Date.UTC.apply(Date, this.value.split(",").map(Number)));
});

$('#mydate').datepicker({
    beforeShowDay: showEventDates
});

BST の間if (date.getTime() == startDates[i]) {、時差があるため、この行は false を返します。

これらを一致させる方法はありますか?UTCではないのは日付ピッカーの時間だと思います。

編集:

select.startdates のオプションの例は次のとおりです。

<option value="2013, 2, 1">01/03/2013</option>
4

3 に答える 3

0

@Martijnコメントに基づく:

var offset = date.getTimezoneOffset();

if (date.getTime() - offset == startDates[i]) 
{
      return [true, 'eventDay'];
}
于 2014-11-28T00:41:04.613 に答える