Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Dojo中的日期和时间小部件_Javascript_Date_Time_Dojo - Fatal编程技术网

Javascript Dojo中的日期和时间小部件

Javascript Dojo中的日期和时间小部件,javascript,date,time,dojo,Javascript,Date,Time,Dojo,Dojo有两个小部件: 日期文本框: 时间文本框: 注意:我以编程方式使用Dojo 我希望用户输入日期和时间,然后向服务器发送批次的“混合”值(即该日期+时间) 我意识到我需要在submt()之前操作这两个值。有没有一个既定的方法来做到这一点?当然,我不是这个星球上唯一需要简单日期/时间表的人?好吧,如果你使用: registry.byId("myTimeTxtBox").get("value"); 您将得到一个Date对象,该对象包含时间值,并且日期是历元本身。这意味着,如果选择1 AM

Dojo有两个小部件:

  • 日期文本框:
  • 时间文本框:
注意:我以编程方式使用Dojo

我希望用户输入日期和时间,然后向服务器发送批次的“混合”值(即该日期+时间)

我意识到我需要在
submt()
之前操作这两个值。有没有一个既定的方法来做到这一点?当然,我不是这个星球上唯一需要简单日期/时间表的人?

好吧,如果你使用:

registry.byId("myTimeTxtBox").get("value");
您将得到一个
Date
对象,该对象包含时间值,并且日期是历元本身。这意味着,如果选择1 AM,它将返回时间
01-01-1970 01:00:00
。 然后,您可以检索unix时间戳(自
01-01-1970 00:00:00以来的毫秒数)
,它将通过执行以下操作获得以毫秒为单位的时间量:

var timeEpoch = registry.byId("myTimeTxtBox").get("value").getTime();
如果对日期文本框执行相同操作:

var dateEpoch = registry.byId("myDateTxtBox").get("value").getTime();
将两者相加,您将获得日期+时间的UNIX时间戳,将其转换回
日期
对象也很容易:

new Date(dateEpoch + timeEpoch);
我还做了一个小的演示。

如果您使用:

registry.byId("myTimeTxtBox").get("value");
您将得到一个
Date
对象,该对象包含时间值,并且日期是历元本身。这意味着,如果选择1 AM,它将返回时间
01-01-1970 01:00:00
。 然后,您可以检索unix时间戳(自
01-01-1970 00:00:00以来的毫秒数)
,它将通过执行以下操作获得以毫秒为单位的时间量:

var timeEpoch = registry.byId("myTimeTxtBox").get("value").getTime();
如果对日期文本框执行相同操作:

var dateEpoch = registry.byId("myDateTxtBox").get("value").getTime();
将两者相加,您将获得日期+时间的UNIX时间戳,将其转换回
日期
对象也很容易:

new Date(dateEpoch + timeEpoch);

我还做了一个小演示。

谢谢!我想随着时间的推移,这个答案会给你带来很多选票!它不起作用!这样做1)将您的时区设置为罗马。2) 设定为日期2014年4月2日3)设定为时间1:42。现在,一个事实:罗马时间1:42是UTC时间11:42。但是,您的小提琴演奏结果是2014年4月2日星期三00:42:00 GMT+0200(CEST),实际上是UTC时间10:42!问题是时间也有一个时区。我把小提琴修好了:我错过什么了吗?谢谢!我想随着时间的推移,这个答案会给你带来很多选票!它不起作用!这样做1)将您的时区设置为罗马。2) 设定为日期2014年4月2日3)设定为时间1:42。现在,一个事实:罗马时间1:42是UTC时间11:42。但是,您的小提琴演奏结果是2014年4月2日星期三00:42:00 GMT+0200(CEST),实际上是UTC时间10:42!问题是时间也有一个时区。我把小提琴修好了:我漏了什么吗?