问题描述
我正在为跑步俱乐部制作一个网站,我需要跑步者能够以 hh:mm:ss 或 mm:ss 的形式输入他们的比赛时间(即,如果不到一小时,则不需要小时)。理想情况下,我希望能够使用带有冒号的某种掩码,这样如果他们输入“01”几个小时,它会自动输入冒号并允许他们开始输入分钟等。分钟和秒在每种情况下,输入的部分需要限制为最多 59 个(大概是使用正则表达式来过滤输入)。
我有点假设输入周围会有很多这样的例子,但我没有看到任何可以顺利工作的例子,例如,如果我从一个现有的值 '00:00:00' 开始。理想情况下,我希望它是纯 Javascript,而不是例如使用 jQuery,但任何能帮助我弄清楚我需要做什么的东西都是受欢迎的。
解决方法
html5 有一个选项使用输入类型时间。
如果你不想秒
<input type="time" id="appt" name="appt" min="09:00" max="18:00" required >
如果您还希望用户输入秒数
<input type="time" id="appt" name="appt" min="09:00:00" max="18:00:00" step=1 required >
希望这适合您的用户案例。
参考:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/time