【问题标题】:Input type "time" without hours, mm:ss format输入类型“时间”不带小时,mm:ss 格式
【发布时间】:2013-10-16 08:16:14
【问题描述】:

我想知道是否可以强制输入不带小时的时间类型,它只以“mm:ss”格式显示“00:00”。 有可能吗?

谢谢。

【问题讨论】:

  • 我不是在谈论 JS Date 对象。我说的是如何格式化输入类型=“时间”。如果我在其上添加 min="00:00" 和 max="59:59" 属性,它将无法正常工作,所以我需要知道如何做到这一点,如果可能的话。 jsfiddle.net/g25jR
  • 我担心这可能需要自定义解决方案 - 除非您只添加 step="1" 并具有 hh:mm:ss 格式 - 虽然自己构建它意味着您想要的格式,加上跨浏览器兼容性,甚至Firefox 对时间输入没有“适当”的支持

标签: javascript html input


【解决方案1】:

maxmin的格式不对

这样试试

<input type="time" step='1' min="00:00:00" max="20:00:00">

【讨论】:

  • 天哪。那是我的错误......现在我使用 step="1" 解决了我的问题,工作正常。谢谢。
【解决方案2】:

这里的问题是,你也许可以使用一些智能 JavaScript 来做到这一点,但是当涉及到跨浏览器兼容性时,你会发现自己处于一个棘手的境地,而且如果你需要支持像 IE8 这样的旧浏览器,它们不支持完全支持 HTML5。

你到底想做什么?

对于一个好的普通 JS (

function getCurrentTime() {

   //Create a new date object.
   var oTime = new Date();

   //Get the minutes from the current date object.
   var minutes = oTime.getMinutes();

   //Get the seconds from the current date object.
   var seconds = oTime.getSeconds();

   //Optional: Add leading zero's
   if (minutes < 10)
       minutes = '0'+minutes;

   if (seconds < 10)
       seconds = '0'+seconds;

   //Return the current minutes and seconds
   return minutes+':'+seconds;

}

您可以创建一个函数,例如将上述结果放在输入字段中,但是如果您要寻找其他内容,那么这是当前时间,例如未来一段时间,这有点不同,所以我不会去那里:)

【讨论】:

  • 适用于所有不支持 HTML5 的浏览器的良好解决方案。我将尝试在我的代码上实现它。谢谢!!
猜你喜欢
  • 2019-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-25
  • 1970-01-01
  • 1970-01-01
  • 2022-09-27
  • 1970-01-01
相关资源
最近更新 更多