有没有办法使用input type duration。我正在尝试以某种方式进行输入,让用户添加时间段,例如这样06:30:27:15( hh:mm:ss:ms)
,应该只允许(0-23:0-59:0-59:0-59)
。
非常感谢您的任何帮助!
注意:我想在Angular2+中实现这个功能。
有没有办法使用input type duration。我正在尝试以某种方式进行输入,让用户添加时间段,例如这样06:30:27:15( hh:mm:ss:ms)
,应该只允许(0-23:0-59:0-59:0-59)
。
非常感谢您的任何帮助!
注意:我想在Angular2+中实现这个功能。
<input type="time">
是用于显示一天中的时间,并根据你的语言环境可能显示上午/下午选择器。:
并忽略无效输入。使用pattern属性也可能有所帮助。在从JavaScript方面使用它之前,请确保将值转换为数字。以下是一些示例代码以供参考。
{
let durationIn = document.getElementById("duration-input");
let resultP = document.getElementById("output");
durationIn.addEventListener("change", function (e) {
resultP.textContent = "";
durationIn.checkValidity();
});
durationIn.addEventListener("invalid", function (e) {
resultP.textContent = "Invalid input";
});
}
input:invalid:not(:focus) { background: red; }
<input id="duration-input" type="text" required pattern="[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}" value="00:00:00:00" title="Write a duration in the format hh:mm:ss:ms">
<p id="output"></p>
我相信有许多开源库可以提供现成的小部件来实现这一功能。
<input type="time" step="0.001">
<label for="appt">Choose a time for your meeting:</label>
<input type="time" id="appt" name="appt"
min="09:00" max="18:00" required>
<small>Office hours are 9am to 6pm</small>
试试这个...希望能有所帮助! 这是我为我的一个项目做的东西...