所以我有如下的html输入
<input id="time_in" type="time" step="1" name="duration">
当我在浏览器中将值设置为“00:00:00”时,一切似乎都很好。
但是你跳进控制台(或提交表格等),价值被截断为“00:00”
即。 jquery的
$("#time_in")[0].value == "00:00"
或普通的js
document.getElementById("time_in").value == "00:00"
我的问题是什么给出了什么?这应该是行为吗? 这对我来说似乎不正确,有人知道我是不是设置了属性还是做了非标准的事情?
编辑:
如果它有任何区别,这只是“00:00:00”,当你将它设置为“00:00:01”时,它已正确设置,你可以
document.getElementById("time_in").value == "00:00:01"
答案 0 :(得分:3)
这是符合标准的行为,但00:00:00
也是如此。
value
属性(如果已指定且非空)必须具有有效时间字符串的值。
“valid time string”的位置是:
字符串是有效时间字符串,表示小时
hour
,分钟minute
和第二second
,如果它包含以下组件给定的顺序:
- 两个ASCII数字,表示小时,范围为0≤
hour
≤23- “:”(U + 003A)字符
- 两个ASCII数字,代表分钟,范围为0≤
minute
≤59- 可选(如果
醇>second
非零,则需要):
- “:”(U + 003A)字符
- 两个ASCII数字,表示
second
的整数部分,范围为0≤s
≤59- 可选(如果
second
不是整数,则需要):
- 002E FULL STOP字符(。)
- 一个,两个或三个ASCII数字,代表
的小数部分second
注意:
second
组件不能是60或61;闰秒无法表示。
因此,如果第二个为零,则分钟后的最后一位(包括冒号)是可选的,但不是禁止的。