gpt4 book ai didi

javascript - HTML5 输入日期类型未以一致的格式存储

转载 作者:行者123 更新时间:2023-11-27 22:37:19 25 4
gpt4 key购买 nike

我在使用类型设置为“日期”的 HTML5 输入字段时遇到问题。

我的测试页面如下:

<!DOCTYPE html>
<html>

<head>
<script>
function testDate() {
window.alert("Date: " + document.getElementById("date").valueAsDate.toJSON());
}
</script>
</head>

<body>
<form>
<label for="date">Date</label>
<input id="date" type="date" onchange="testDate()" required />
</form>
</body>

</html>

如果我在 Opera 中加载此页面,我会看到一个“日期选择器”。如果我选择 2016 年 8 月 10 日,我会看到一个弹出窗口,其中显示了正确的行为,即显示以下内容:

"Date: 2016-06-10T00:00:00.000Z"

如果我在 Firefox 中加载页面,我不会得到任何类型的“日期选择器”,它会让我输入我想要的任何值。我尝试过以下输入:

  • 2016 年 10 月 8 日
  • 2016年8月10日
  • 2016-08-10

在所有情况下,我都会将以下内容记录到控制台:

TypeError: document.getElementById(...).valueAsDate is undefined

在我的实际代码中,我只是想让用户选择一个日期,将其转换为 JSON 日期,然后通过 XMLHttpRequest 发送它,但我似乎找不到日期格式的任何一致性。

有人可以帮忙吗?

最佳答案

如果您不创建特定于浏览器的 Web 应用程序,那么目前使用 字段还为时过早。如您所见here - Firefox、Safari 和 Internet Explorer 不支持此类输入字段。

您可以尝试使用pattern attribute它可用于对用户输入进行简单的验证。它有更好的支持,但仍然不完美。

您还可以尝试使用 one of these vanillaJS datepicker implementations .

关于javascript - HTML5 输入日期类型未以一致的格式存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39002058/

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