【问题标题】:Force user to enter only hours in Input=Time and disable Minutes强制用户在 Input=Time 中仅输入小时并禁用分钟
【发布时间】:2022-01-26 21:02:55
【问题描述】:

在我的应用程序中,时间总是像 HH/00/00。因此,用户只需输入小时值,因为分钟将为 00。我找不到将 input=time 的格式更改为仅 HH 的方法。

我找到了一些关于分配步长值的文章,但它不起作用。

关于阻止用户选择分钟并强迫他只选择小时的任何想法?

<div class="md-form mx-5 my-5">
    </div>

  <label>Choose your time</label>
  <input type="time"  /

【问题讨论】:

  • 为什么不直接使用select? (或一些花哨的 UI 版本,例如 select2
  • @freedomn-m 你的意思是使用选择并添加选项到所有可用时间?
  • “所有可用时间” - 听起来你认为你需要超过 24 小时...
  • @freedomn-m 感谢您的评论。我会这样做,但我问是否有任何方法可以像 format=HH.如果没有,那么我将使用选择。

标签: javascript html jquery bootstrap-4


【解决方案1】:

一些 JS 代码怎么样?真的很简单,就像下面的那个,你可以添加更多的条件来使它更严格,但是你去吧:

const timeInput = document.getElementById('time');

timeInput.addEventListener('input', (e) => {
  let hour = e.target.value.split(':')[0]
  e.target.value = `${hour}:00`
})
<div class="md-form mx-5 my-5">
    </div>

  <label>Choose your time</label>
  <input id="time" type="time">

【讨论】:

  • 谢谢!。那挺好的。但是分钟仍然出现在用户面前:)。不知道能不能从timepicker中去掉
  • 这是不可能的,但它不会很酷,如果有办法只禁用分钟输入,那会很酷,但在我看来只显示几个小时而没有分钟会很丑,您可以进行简单的输入或选择只需几个小时。
  • stackoverflow.com/questions/58063185/…我发现,有一种方法可以禁用分钟,给你,但它不是普遍兼容的,我的代码适用于所有浏览器。
猜你喜欢
  • 2020-06-16
  • 2020-10-16
  • 2021-07-31
  • 2018-03-06
  • 1970-01-01
  • 1970-01-01
  • 2016-04-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多