这是我的以下代码。我正在尝试在我的代码中这样做:
input = 2014-02-09 + 5 days
,应该给出2014-02-14
,但我得到的结果是:2019-02-09
。
<!DOCTYPE html>
<html>
<body>
<input type="date" id="myDate" value="2014-02-09">
<input type="number" id="number" value="5">
<button onclick="myFunction()"> Try it </button>
<p id="demo"></p>
<p id="demo2"></p>
<p id="demo3"></p>
<script>
function myFunction()
{
var x = document.getElementById("myDate").value;
document.getElementById("demo").innerHTML = x;
var y = document.getElementById("number").value;
document.getElementById("demo2").innerHTML = y;
var d = parseInt(x) + parseInt(y);
document.getElementById("demo3").innerHTML = d;
}
</script>
</body>
</html>
如何获得所需的结果:2014-02-09 + 5 days = 2014-02-14
?
答案 0 :(得分:0)
如果我没有误解您的要求,这就是您想要的-只需在日期选择器中的选定日期添加一些数字即可。
<!DOCTYPE html>
<html>
<body>
<p>Click the button to display the date after changing the day of the month.</p>
<input type="date" id="myDate" value="2014-02-09">
<input type="number" id="number" value="5">
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<p id="demo2"></p>
<p id="demo3"></p>
<script>
Date.prototype.addDays = function(days) {
this.setDate(this.getDate() + parseInt(days));
return this;
};
function myFunction() {
var x = document.getElementById("myDate").value;
document.getElementById("demo").innerHTML = x;
var y = document.getElementById("number").value;
document.getElementById("demo2").innerHTML = y;
var newDate = new Date(x).addDays(parseInt(y));
document.getElementById("demo3").innerHTML = newDate.toISOString().substr(0, 10);
}
</script>
</body>
</html>