使用TimePiker我想设置时区:
$('#timeStart').timepicker({
showTimezone: true,
timeFormat: "hh:mm TT",
timezoneList:
[
{ 'value': '-720', 'label': '(GMT-12:00) International Date Line West' },
{ 'value': '-660', 'label': '(GMT-11:00) Midway Island, Samoa' }
....
{ 'value': '+840', 'label': '(GMT+14:00) Time in Samoa' }
]
});
timepiker被初始化,并在选择器中添加了zone,但未检测到所选值是列表中的第一个如果我手动设置选项时区:'+840'它工作
为什么不自动检测时区?
我找到了解决方案,而不是
{ 'value': '-720', 'label': '(GMT-12:00) International Date Line West' }
需要使用
{ value: -720, label: '(GMT-12:00) International Date Line West' }
我不熟悉这个时间选择器,但如果你可以手动选择它,通过使用
new Date().getTimezoneOffset();
你可以做一个变通。
diff = new Date().getTimezoneOffset();
timediff = diff/-60;
currentTimezone = (timediff > 0)? "+" : "-";
currentTimezone = (Math.abs(timediff) >= 9)? currentTimezone + Math.abs(timediff): currentTimezone +"0"+ Math.abs(timediff);
currentTimezone += "00";
console.log(currentTimezone)