gpt4 book ai didi

javascript - 将 javascript 日期分配给 html5 日期时间本地输入

转载 作者:技术小花猫 更新时间:2023-10-29 12:40:15 24 4
gpt4 key购买 nike

DOM:

<input id="myTextbox" type="datetime-local" />

Javascript(jQuery):

$('#myTextbox').val(new Date().toISOString());

不起作用。 input[type=datetime-local] 的格式应该是 ISO 8601,这是 javascript 的 Date.toISOString() 返回的格式。

最佳答案

更新:此答案可能会根据您本地的时区和一天中的时间错误地设置日期(偏差一天)。请参阅 Maxim 的回答以获取解释和正确的解决方案。

--

http://www.w3schools.com/jsref/jsref_toisostring.asp :

The toISOString() method converts a Date object into a string, usingthe ISO standard.

The standard is called ISO-8601 and the format is:YYYY-MM-DDTHH:mm:ss.sssZ

虽然 ISO 8601 具有一定的灵 active ,但 javascript 的 Date 的 toISOString() 的格式完全如上所示。

末尾的“Z”表示这是 UTC 日期。因此,此表示包含时区信息。 (Javascript 日期自然采用 UTC 时间,因为它们在内部表示为自纪元以来的毫秒数。)

type=datetime-local的HTML5输入格式必须是...

The following parts, in exactly the following order:

  • A date.
  • The literal string "T".
  • A time.

Example:

1985-04-12T23:20:50.52

1996-12-19T16:39:57

http://www.w3.org/TR/html-markup/input.datetime-local.html

这仍然是 ISO 8601,但更严格,并且不允许指定时区。

幸运的是,删除时区就像删除尾随的“Z”一样简单。

var isoStr = new Date().toISOString();
$('#myTextbox').val(isoStr.substring(0,isoStr.length-1));

关于javascript - 将 javascript 日期分配给 html5 日期时间本地输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28760254/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com