javascript - 输入 [type ='datetime-local' ] 在 Chrome 中不支持秒

标签 javascript html forms

使用datetime-local当通过 Javascript 设置该值并且该值包含秒时,Chrome 上的输入类型似乎不起作用。为什么会发生这种情况?这似乎是一个普遍的事情。简而言之,重现问题的方法如下:

  1. 使用 type='datetime-local' 创建一个 input 元素。
  2. 使用 JavaScript(使用 .value)将值设置为任意日期和时间,且非零秒(例如 '1980-01-01T01 :01:01.001') 值。
  3. 尝试提交表单。它返回一个验证错误。

但是,如果您将秒设置为 0(例如1980-01-01T01:01:00.001),或者该值是通过 HTML 属性设置的,则验证错误不会被抛出,表单提交正常。

查看此 CodePen 示例:http://codepen.io/AskYous/pen/KNONVG

最佳答案

这似乎是 Chrome 中的一个错误。我找到了解决方案。使用.setAttribute()函数:

datetimeInput.setAttribute('value', '1980-01-01T01:01:01.001');

关于javascript - 输入 [type ='datetime-local' ] 在 Chrome 中不支持秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41373682/

相关文章:

php - 在 php、ajax 或 javascript 中加载进度?

javascript - 在 Angular 单元测试指令中注入(inject)过滤器

javascript - Polymer 中的循环 WordPress 文章

java - 从动态页面获取HTML代码

javascript - 关闭浏览器后 localStorage 重置

php - 让 MySQL 不从值中删除前导 0

javascript - 提交时检查密码

javascript - 在加载特定 iframe 元素 ID 之前隐藏父页面中的表单

html - 格式良好的 CSS 到 LESS

javascript - 循环ajax有时只提交