【问题标题】:value of input type time in javascriptjavascript中输入类型时间的值
【发布时间】:2017-05-10 04:28:42
【问题描述】:

我有这个 html:

<input required="" id="time" type="time">

js:

var time = $('#time').val();
console.log(time); // it outputs e.g. 10:00
var newTime = time--; // NaN
var convert = new Date(time); // Invalid Date

如何处理输入值?我想将它与其他输入的值或其他基本操作(例如将时间缩短 1 小时)进行比较,但我无法将其转换为 Date 对象。

【问题讨论】:

  • document.querySelector("#time").valueAsDate.valueAsNumber -> HTMLInputElement
  • 我知道,但问题是如何将其转换为日期?编辑:谢谢
  • 有什么方法可以在 jquery 中获取该值(使用 $(this))? $(this).valueAsDate 不起作用
  • @dontHaveName "有什么方法可以在 jquery 中获取该值(使用 $(this))?$(this).valueAsDate 不起作用" @987654327 @ 是 DOM 元素属性,而不是 jQuery 方法。见帖子。

标签: javascript jquery html


【解决方案1】:

尝试使用valueAsDate 属性

$("input[type=time]").on("change", function() {
  console.log(this.valueAsDate)
})
<input required="" id="time" type="time">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

【讨论】:

  • 以及如何将其恢复为 hh:mm?只是用新的日期(值)吧?
  • @dontHaveName "有什么方法可以让它恢复到 hh:mm 吗?" 试试this.valueAsDate.toJSON().slice(-13, -8)。也可以使用this.valueAsDate.getHours()this.valueAsDate.getMinutes()
猜你喜欢
  • 2015-01-30
  • 1970-01-01
  • 1970-01-01
  • 2021-03-07
  • 2020-11-23
  • 1970-01-01
  • 1970-01-01
  • 2021-10-14
  • 2019-03-03
相关资源
最近更新 更多