首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Javascript -将30天添加到输入日期

Javascript -将30天添加到输入日期
EN

Stack Overflow用户
提问于 2017-11-23 05:35:32
回答 3查看 3.1K关注 0票数 1

我似乎找不到最近的任何东西,而且有可能我落后于时代,只是在寻找错误的术语,所以我希望这里的人能有所帮助,或者有一些建议。

我有两个日期字段,一个是发票日期,一个是到期日。我想要发生的是,我选择或更改一个日期在发票日期和到期日期自动更新,以反映日期后30天发票日期。

代码语言:javascript
运行
复制
<input id="dateInvoice" type="date"/>
<input id="dueDate" type="date"/>
EN

Stack Overflow用户

回答已采纳

发布于 2017-11-23 07:09:29

您可以遵循这种方法。

  • 使用split和日期构造函数解析输入日期的值到日期
  • 使用setDate添加天数
  • 将新日期值设置为“输出日期”。

Demo

代码语言:javascript
运行
复制
document.querySelector("#addDays").addEventListener("click", function() {
  var invoiceDate = document.querySelector("#invoiceDate").value;
  var days = Number(document.querySelector("#days").value);
  var dueDateElement = document.querySelector("#dueDate");

  if (!isNaN(days) && invoiceDate.length) {
    invoiceDate = invoiceDate.split("-");
    invoiceDate = new Date(invoiceDate[0], invoiceDate[1] - 1, invoiceDate[2]);
    invoiceDate.setDate(invoiceDate.getDate() + days);
    dueDateElement.valueAsDate = null;
    dueDateElement.valueAsDate = invoiceDate;
    //console.log(invoiceDate, dueDateElement.value);
  }
});
代码语言:javascript
运行
复制
Invoice Date <input type="date" id="invoiceDate"> <br><br> Add Days <input type="text" id="days"> <br><br>

<button id="addDays">Add Days</button> <br><br> Due Date <input type="date" id="dueDate">

票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47448269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档