我有两个Datepicker和一个HTML组合框。组合框包含2个值(6个月和1年)。如果我从组合框中选择6个月,则第二个日期选择器应显示从第一个日期选择器日期起6个月之后的日期。

我只需要在jQuery中使用JavaScript为此代码。

我的代码是

<html>
  <body>
    <select>
      <option value="6">6 Months</option>
      <option value="12">1 Year</option>
    </select>
    <input type="date" name="Sdate" id="Sdate">
    <input type="date" name="edate" id="edate">
  </body>
</html>

最佳答案

我从头开始获取日期并添加月数-然后使用valueAsDate设置第二个日期选择器

然后,我将此功能添加到开始日期和月份选择器中

香草JavaScript



function setDate() {
  let d = new Date(document.getElementById("sDate").value)
  let mon = +document.getElementById("mon").value;
  d.setMonth(d.getMonth()+mon)
  document.getElementById("eDate").valueAsDate = d;
}

document.getElementById("sDate").addEventListener("change",setDate)
document.getElementById("mon").addEventListener("change",setDate)

<select id="mon">
  <option value="6">6 Months</option>
  <option value="12">1 Year</option>
</select>
<input type="date" name="Sdate" id="sDate">
<input type="date" name="edate" id="eDate">

10-05 20:27
查看更多