【问题标题】:Javascript: getHours() returning wrong datumJavascript:getHours() 返回错误的数据
【发布时间】:2019-07-22 10:30:39
【问题描述】:

JS:提取小时数与插入<input type='time' id='arrive'></input>标签相同。

我正在尝试从输入字段中解析时间,我认为我可以使用 document.getElementbyId('arrive').valueAsDate.getHours() 属性来仅获取小时

现在如果我输入'23',我读取的属性是'0',如果我输入'10',我读取的属性是'11'。

如何提取未经修改的输入值? (例如:我输入“7”,然后读到“7”)

【问题讨论】:

标签: javascript html time


【解决方案1】:
document.getElementbyId('arrive').valueAsDate.getHours()

上面的代码会一直给你UTC, 因此,要获得您的地理位置的时间,您必须根据您当地的标准时间进行转换。例如印度 +5:30。

t = new Date(document.getElementById("arrive").valueAsDate);
tt = new Date(t.getTime() + t.getTimezoneOffset() * 60000);
....
....
hh = tt.getHous();
mm = tt.getMinuts();

希望它对你有用..

【讨论】:

  • 我是这样转换的:document.getElementbyId('arrive').valueAsDate.getHours() + document.getElementbyId('arrive').valueAsDate.getTimezoneOffset() UTC 在代码中是“好的”,但在语义上是错误的(我认为)
猜你喜欢
  • 2020-08-04
  • 2017-08-22
  • 2017-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多