如何使用 javascript 将一小时添加到本地日期时间

How can I add one hour to a datetime-local with javascript

我的 HTML 代码中有此输入 <input type="datetime-local" id="myTime" />。我正在使用 javascript 来获取此输入 var myTime = document.getElementById("myTime").value; 的值,但我需要将一个小时添加到该值并将其保存在另一个变量中。日期时间的格式为 "yyyy-mm-dd HH:MM:SS"。

我知道这看起来很容易,但我尝试了很多方法,但我就是做不好。如果能对此提供一点帮助,我将不胜感激。

谢谢!

d = new Date('2020-04-09 10:10:00'); // Converted to UTC Time Zone
console.log(d);
d.setHours(d.getHours() + 1);
console.log(d);

d1 = new Date('2020-04-09 10:10:00'+'+0500'); // Desired Time Zone added.
console.log(d1);
d1.setHours(d1.getHours() + 1);
console.log(d1);

console.log(d.toLocaleString("en-US", {timeZone: "Australia/Brisbane"}), d.toLocaleString("en-US", {timeZone: "Asia/Shanghai"}), d.toLocaleString("en-US", {timeZone: "Asia/Karachi"})) // Displayed as Time Zone's Date settings.

console.log(d1.toLocaleString("en-US", {timeZone: "Australia/Brisbane"}), d1.toLocaleString("en-US", {timeZone: "Asia/Shanghai"}), d1.toLocaleString("en-US", {timeZone: "Asia/Karachi"})) // Displayed as Time Zone's Date settings.

您可以从 myTime 控件获取值,然后将其转换为新的 Date 对象,然后简单地向其添加 1 小时。

(点击演示中的按钮获取更新日期)

var myTime = document.getElementById("myTime");
myTime.value = new Date().toISOString().slice(0,16);

function getDatetime() {
  var str = myTime.value;    
  var d = new Date(str);
  console.log('Before:\t', d.toLocaleString())
  
  // Add 1 hour to datetime
  d.setHours(d.getHours() + 1);
  
  console.log('After:\t', d.toLocaleString())
}
<input type="datetime-local" id="myTime" />
<button onclick="getDatetime()">Click me</button>

你可以这样做,试试这个

$( document ).ready(function() {

DateObj = Date.parse("10/20/2017 16:00");

// vale you get $("#myTime").val(value);

var date = new Date(DateObj+3600000);

    console.log(date.toLocaleString('en-US',{ hour12: false }));
});
   for `<input type="datetime-local" id="myTime" />` input field in html put below code in you document ready function or on Change function to get one hour ahead of input time.                                                                  

var today = new Date(document.getElementById("myTime").value);
today.setHours(today.getHours() + 1);
console.log(today)