Javascript 引导日期选择器:如何使用特定时区?
我创建了一个小程序来选择日期,并将其写入MySQL 关键在于,无论用户现在在哪里,该日期必须是Javascript 引导日期选择器:如何使用特定时区?,javascript,jquery,momentjs,bootstrap-datepicker,Javascript,Jquery,Momentjs,Bootstrap Datepicker,我创建了一个小程序来选择日期,并将其写入MySQL 关键在于,无论用户现在在哪里,该日期必须是欧洲/柏林的本地日期 $(....).datepicker({ startDate: 'today' }); 我的问题是:在不使用服务器端代码(PHP)或任何其他库的情况下,如何将startDate设置为特定时区的本地 我尝试使用时刻+时刻时区,但它也显示本地浏览器日期 var todaysDate = moment().tz('Europe/Berlin').format(); $(...).dat
欧洲/柏林的本地日期
$(....).datepicker({ startDate: 'today' });
我的问题是:在不使用服务器端代码(PHP)或任何其他库的情况下,如何将startDate
设置为特定时区的本地
我尝试使用时刻
+时刻时区
,但它也显示本地浏览器日期
var todaysDate = moment().tz('Europe/Berlin').format();
$(...).datepicker({ startDate: todaysDate });
谢谢。日期对象将始终位于本地时区(基于浏览器)
dateObj.getTime()
将为您提供绝对毫秒
是时区转换的绝佳库
编辑
关于如何:
var newYork = moment.tz("2014-06-01 12:00", "America/New_York");
var losAngeles = newYork.clone().tz("America/Los_Angeles");
var london = newYork.clone().tz("Europe/London");
newYork.format(); // 2014-06-01T12:00:00-04:00
losAngeles.format(); // 2014-06-01T09:00:00-07:00
london.format(); // 2014-06-01T17:00:00+01:00
及
默认情况下,力矩以本地时间解析和显示
这是他们网站上的准确代码。如果你没有通过《美国/纽约》
,而只是简单地通过《时刻》(“2014-06-01 12:00”),就会得到当地时间
moment().utcOffset()
函数将为您获取utcOffset,如果您想知道解释哪个时区的瞬间
请参见中的演示,也许类似的内容可以帮您找到正确的方向
HTML
只是需要
moment.tz.setDefault(“欧洲/柏林”)代码>
在此之后,不使用tz()
生成正确的日期。还要确保格式匹配
var todaysDate = moment().format('D MMM YYYY');
$(...).datepicker({ format: 'dd M yyyy', startDate: todaysDate });
我尝试使用矩+矩时区,但它也显示本地浏览器日期。我得到以下错误。未捕获类型错误:无法识别选项startDate!他不知道时间格式的“ii”是什么意思——还有,为什么要将它乘以60k?@Lightning3插件使用的格式是:getTimezoneOffset()
以分钟为单位返回偏移量,getTime()
以毫秒为单位返回当前时间。所以这只是从分钟到毫秒的转换。
var options = {
format: 'mm/dd/yyyy hh:ii',
autoclose: true
};
$('.date-time-picker').datetimepicker(options).on("changeDate", function (e) {
var TimeZoned = new Date(e.date.setTime(e.date.getTime() +
(e.date.getTimezoneOffset() * 60000)));
$(this).datetimepicker('setDate', TimeZoned);
});
var todaysDate = moment().format('D MMM YYYY');
$(...).datepicker({ format: 'dd M yyyy', startDate: todaysDate });