我正在尝试从用户获得飞行日期,而datePicker始终将日期设置为用户的时区,导致发送到服务器的错误日期。尝试使用ng-model-options="{ timezone: 'utc' }"
,但是用户选择日期后看到错误的日期(以用户选择的前一天显示的日期)。
我该如何告诉datepicker完全忽略时区 - 如果可能的话,我该怎么办,将日期转换为非时区日期?
?我知道我可以在FE上将其转换为POSIX,但是一旦我这样做,datepicker尖叫就需要日期对象。
预先感谢...
我有完全相同的问题,我使用此代码结束了我们的结局
Date.prototype.toJSON = function () {
var timezoneOffsetInHours = -(this.getTimezoneOffset() / 60); //UTC minus local time
var sign = timezoneOffsetInHours >= 0 ? '+' : '-';
var leadingZero = (timezoneOffsetInHours < 10) ? '0' : '';
//It's a bit unfortunate that we need to construct a new Date instance
//(we don't want _this_ Date instance to be modified)
var correctedDate = new Date(this.getFullYear(), this.getMonth(),
this.getDate(), this.getHours(), this.getMinutes(), this.getSeconds(),
this.getMilliseconds());
correctedDate.setHours(this.getHours() + timezoneOffsetInHours);
var iso = correctedDate.toISOString().replace('Z', '');
return iso + sign + leadingZero + Math.abs(timezoneOffsetInHours).toString() + ':00';
}
它来自另一个,所以质疑如何json串起JavaScript日期并保留TimeZone