【问题标题】:Why can't I type from 20 to 23 , but can type below 19 and it works file ( input type - time )为什么我不能输入 20 到 23,但可以输入 19 以下并且它有效文件(输入类型 - 时间)
【发布时间】:2023-01-27 15:56:03
【问题描述】:

<input type="time" />

在示例 abot 中,您可以看到,当我键入 19 - 它会将其替换为 07 pm,这是正确的,当我键入 20 时,它会将其转换为 02(并且 pm/am 无关紧要),它在那里使它也适用于 20-23 范围的任何方法,当我键入 20 时,它应该将其转换为 08 pm

【问题讨论】:

  • 在 sn-p 中,当我键入 19 或 20 或 23 时,它不会转换任何内容。它只显示例如“23:00”。
  • 它确实在 FF 中为我转换为 08..
  • 取决于语言环境,而不是浏览器。
  • @VLAZ 我可以预设一些我想要的格式吗?
  • 似乎在每个地区都有不同的工作方式

标签: javascript html input time


【解决方案1】:

这是现在大多数浏览器上时间输入的预期行为。在 12 小时制中键入超过 12 的任何内容都将被解释为这样。所以“14”将返回“02”,“19”将返回“07”。

时间输入根据操作系统设置工作。对你我来说,那是 12 小时。对于世界上大部分地区来说,它是 24 小时的。这就是输入的工作原理,您可以在MDN 上阅读更多相关信息。

关于解决方案,我不认为这是你可以在不使用不同输入类型的情况下强制更改(即反对用户的默认偏好)的东西。除了时间,您还必须使用文本或数字输入并将它们配置为 24 小时制。

【讨论】:

    猜你喜欢
    • 2022-11-18
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 2022-09-30
    • 1970-01-01
    相关资源
    最近更新 更多