在Javascript中向用户输入的日期添加天数

在Javascript中向用户输入的日期添加天数,javascript,html,forms,date,datepicker,Javascript,Html,Forms,Date,Datepicker,因此,我在尝试用Javascript制作日期计算器时遇到了一个障碍。我对Javascript还相当陌生,所以我觉得自己有点深陷其中,但下面是我试图完成的工作的概述 下面是一个JSFIDLE: 我首先在HTML中有一个表单,格式如下: <form> <p class="instructions">I need my items by:</p><br> <input type="date" name="date" value="" i

因此,我在尝试用Javascript制作日期计算器时遇到了一个障碍。我对Javascript还相当陌生,所以我觉得自己有点深陷其中,但下面是我试图完成的工作的概述

下面是一个JSFIDLE:

我首先在HTML中有一个表单,格式如下:

<form>
   <p class="instructions">I need my items by:</p><br>
   <input type="date" name="date" value="" id="date"/>
   <input type="button" value="Submit" id="submit">
</form>
<p>Be sure to order by:</p><p id="dateoutput"></p>

我需要我的物品:


请务必按以下方式订购:

这里的想法是,用户将在表单中输入一个日期,然后javascript代码将在表单中添加10天,并输出他们需要订购的日期,格式为日期

这是我到目前为止的脚本,我知道它还没有开始工作,但我想这是一个开始:

<script>
document.getElementsByName("submit").onclick = function() {
  var dateIn = document.getElementsById("date").value;
  var addDays = 10;
  var dateOut = dateIn + addDays; 
};

document.getElementById("dateoutput").innerHTML = dateOut;
</script>

document.getElementsByName(“提交”).onclick=function(){
var dateIn=document.getElementsById(“日期”).value;
var addDays=10;
var dateOut=dateIn+addDays;
};
document.getElementById(“dateoutput”).innerHTML=dateOut;

我真的很感激你在这件事上能给我任何指导。提前谢谢

您的代码中存在多个打字错误和问题。我将在下面列出其中的一些,让您走上正确的道路

1) 您的行
document.getElementsByName(“submit”).onclick….
正在尝试搜索HTML中没有的
name=“submit”
元素

2) 下一行
var dateIn=document.getElementsById(“日期”).value
有一个输入错误,它应该是:
document.getElementById(“日期”).value
。你有一个额外的“s”

3) 行
document.getElementsById(“dateoutput”).innerHTML=dateOut有3个问题。首先,你有额外的“s”,如上文第2点所述。第二,您正试图将innerHTML分配给失去作用域的变量的值。最后,它不会在click函数的上下文中执行,而是在解析时立即执行,而不是在click事件发生时执行。因此,它需要在onclick处理程序函数中移动


4) 关于向日期添加天数。请退房。现在,您正试图将10添加到从输入元素提取的字符串值中,该元素只是将字符串“10”连接到日期字符串的末尾。您需要将其转换为日期对象,然后添加10天。在提供的链接中的代码示例中解释了这一点

您看过了吗?您没有提到问题…可能是重复的谢谢,这是一个很大的帮助!