首 页IT知识库收藏内容
当前位置:翔宇亭IT乐园IT知识库WEBHTML

<input type="time">

减小字体 增大字体 作者:本站  来源:本站整理  发布时间:2023-07-26 12:40:01

在HTML中,<input type="time">用于定义一个时间输入/选择控件。该控件提供一个界面让用户选择一个时间。

<input type="time">的定义格式

在HTML中,使用如下形式来定义一个时间控件:

<input type="time" id="t1" name="t1">

不同浏览器在显示该控件时,其外观可能不尽相同。

该例在谷歌浏览器/Edge浏览器中的显示效果如下:

HTML 时间控件在谷歌浏览器中的效果 HTML 时间控件edge浏览器中的效果

谷歌浏览器中的效果                    Edge浏览器中的效果

value属性

value属性用于设置<input type="time">控件的默认时间值。

该值是一个时间字符串,其形式为:hh:mmhh:mm:ss

其中,hh表示小时,其取值范围为00 - 23 mm表示分钟,其取值范围为00 - 59ss表示秒,其取值范围为00 - 59

在用户设置value属性值时总是使用24小时的格式来设置,但用户输入/或设置完,在浏览器中显示的格式取决于当前系统的设置或浏览器的设置(即有可能变为12时格式的时间)。

<input type="time" id="t2" name="t1" value="11:30">

其在Edge浏览器中的显示效果如下:

HTML 时间控件的value属性

max属性

<input type="time">的max属性用于指定该控件的最大时间值,如果该属性值是无效的字符串,则该属性设置将失效,即max属性对该控件不起作用。

<input type="time" id="t3" name="t1" max="20:30">

其在Edge浏览器中的浏览效果如下:

html 时间控件的max属性

因为时间可以循环,该控件并不像<input type="date">那样有禁止选择的数值。

min属性

min属性用于给出<input type="time">可接受的最小时间值。

如果该属性值是无效的字符串,则该属性将不起作用。

需要注意的是,对于时间的min属性和max属性并不只能考虑数值上的大小,还要考虑跨午夜的情况,比如min属性的值设置为:14:20,而max属性设置为06:20,则是指当天的14:20到第二天的上午6:20。

<input type="time" id="t4" name="t1" min="06:30">

其在Edge浏览器中的浏览效果如下:

html 时间控件的min属性

step属性

step属性用于设置<input type="time">可调整的时间间隔。

step属性是一个大于0的整数值,其单位是秒,默认值为60秒,如果指定的值不是60的整数倍时,则时间输入控件将提供秒的输入区域。

当设置了step属性后,在谷歌浏览器或Edge浏览器中在点击输入框中的分或秒后,可以通过键盘上的上下箭头来调整时间。

如果设置了min属性后,step属性将以min属性的值为基点进行间隔设置;

如果设置了value属性,则step属性将以value属性的值为基点进行间隔设置;

如果设置了max属性,则step属性将以max属性的值为基点进行间隔设置;

如果没有提供以上所说的任何属性,则时间控件将会以适当的间隔进行调整。

<p>下面的例子将step属性设置为300</p>
<input type="time" id="t5" name="t1" step="300">
<p>下面的例子将step属性设置为270</p>
<input type="time" id="t6" name="t2" step="270">
<p>下面的例子将step属性设置为300,min属性为:13:20</p>
<input type="time" id="t7" name="t3" min="13:20" step="300">
<p>下面的例子将step属性设置为300,value属性设置为:13:23</p>
<input type="time" id="t8" name="t4" value="13:23" step="300">
<p>下面的例子将step属性设置为300,max属性值为:20:20</p>
<input type="time" id="t9" name="t5" max="20:20" step="300">

上面的例子中,第1个时间控件中step属性的值设置为300,而没有设置其他属性,则该控件默认允许的间隔为5分钟的整数倍(谷歌浏览器/Edge浏览器)。

第2个时间控件中step属性的值为270,因为不是60的整数倍,则该控件会显示出秒输入区,并且调整为秒输入区需要是30秒的整数倍(谷歌浏览器-114版,而在Edge浏览器中step属性不起作用-115版——表单不验证,可以通过键盘上下箭头调整)

第3个时间控件除了指定了step属性的值为300外,还指定了min属性的值为13:20,则该时间控件将以13:20为基点,每5分钟是有效的值,且时间不能晚于13:20,即13:25,13:30,13:35等是有效的值。

第4个时间控件除了指定了step属性的值为300外,还指定了value属性的值为13:23,则该时间控件将以13:23为基点,往前或往后每隔5分钟都是有效的值,即13:13,13:18,13:23,13:28等都是有效的输入值。(该设置在谷歌浏览器中有效,而在Edge浏览器中不起作用——表单不验证,但可以使用键盘上下箭头调整时有用。)

第5个时间控件除了指定了step属性的值为300外,还指定了max属性的值为20:20,则该时间控件将以20:20为基点,往前每隔5分钟都是有效的输入值,即20:15,20:10,20:00等都是有效的值。

以上各例在谷歌浏览器中的效果如下图所示:

HTML 时间控件step属性

当输入的值不符合要求时,浏览器给出下图相似的提示:

HTML 时间控件输入值无效时的提示信息

list属性

list属性为<input type="time">提供一个用户可选择的时间列表,该值是<datalist>元素的id值。

<datalist>元素中预定义了时间值的列表,可以方便用户选择输入。用户可以从这个列表中选择一个值,也可以使用输入方式或在时间控件中选择其它的值。

下面这个例子演示了<input type="time">控件list属性的使用方法。

<form action="form_example.asp" method="post">
 <label for="e1">请输入第一节课时间:</label>
 <input type="time" id="t1" name="t1" list="tlist">
 <datalist id="tlist">
  <option value="08:20">
  <option value="08:25">
  <option value="08:30">
  <option value="08:35">
  <option value="08:40">
 </datalist>
 <br><br>
 <input type="submit">
</form>

上例在浏览器中的效果如下:

HTML时间控件的list属性

其他属性

<input type="time">控件也支持readonly属性required属性disabled属性等属性,分别用于指定该控件的值是只读的,不能为空和禁用。

有关这些属性的具体用法,读者可以参考《HTML 表单中的单行文本控件》一文中的相关内容。

以上相关例子在浏览器中的预览效果可以点击这里查看

以上讲解了<input type="time">的用法及相关属性的含义,如有问题请留言明示。

相关阅读推荐:

<input type="date">

<input type="datetime-local">

<input type="text">

<input type="radio">

<input type="checkbox">

<input type="color">

<input type="submit"> | <input type="reset"> | <input type="button">


如对以上内容有疑问或文中有错误之处,请留言指出。如需转载,请注明出处:翔宇亭IT乐园(http://www.biye5u.com),并给出本文的链接地址:http://www.biye5u.com/article/html5/2023/6617.html

微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
愿您的精彩评论引起共鸣,带来思考和价值。
用户名: 查看更多评论
分 值:100分 90分 80分 70分 60分 40分 20分
内 容:
验证码:
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2024 biye5u.com. All Rights Reserved.