使用以下控件:
注意我设置的值是: http://www.w3.org/TR/html-markup/input.datetime-local.html
<input type="datetime-local" name="transaction_date" value="2011-05-31T10:07:41">
请注意以下链接不会呈现秒数?
http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_type_datetime-local
是否可以将其配置为不允许秒数可编辑,即不在控件中显示秒数?
编辑
下图是用chrome渲染的?为什么我在这里得到可用的秒数,但上面的 w3school 链接没有秒数?如何让 chrome 不渲染秒数?
最佳答案
在实现 W3C HTML5 CR 中定义的控件的浏览器上,秒数默认情况下不可设置。 .原因是粒度由 step
属性设置,以秒为单位,默认值为 60。这就是它在 Chrome、Opera 和 Safari 中的工作方式。
如果您真的想允许指定秒数,您可以设置 step=1
。
在不支持这种输入类型的浏览器上,控件降级为文本输入控件,用户可以在其中输入任何数据,浏览器不会以任何方式处理数据(具体而言,不检查一个日期和时间)。
更新解决修改后的问题:如果元素的value
属性不满足其他属性设置的要求(包括的默认值) step
),那么输入最初会遇到步长不匹配。 HTML5 CR 说:“当元素出现步长不匹配时,用户代理可能会将元素的值四舍五入到元素不会出现步长不匹配的最近的本地日期和时间。” Opera 遵循这一点,Chrome 没有。士气是:不要那样做。如果您不需要秒,请不要使用带有秒部分的 value
属性。
关于css - html5 datetime-local control - 如何隐藏秒数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20111413/