首页 > 解决方案 > 如何从 setDate 中的选项值添加日期

问题描述

我想根据我的输入计算差异日期,客户可以确定多少天。之后它将在我选择“1天”或“2天”后计算,并在我的输入中显示添加日期的结果,并以“to”作为id。

setdate 没有从我的选项值中正确添加。我正在使用 getDuration 来检索选项中的值。我假设该变量可以添加我的 setDate。

<select name="duration" id="duration" class="form-control" onchange="run(this.value)">
<script>
function run(val) {
    var formDuration = document.getElementById("duration");
    var getDuration = formDuration.options[formDuration.selectedIndex].value;
    // alert(getDuration);

    document.getElementById("from").addEventListener("change", function() {
    var input = new Date(this.value);
    var newdate = new Date(input);
    var temp = newdate.getDate();
    var calculate = temp + getDuration;
    newdate.setDate(calculate);
    var dd = newdate.getDate();
    var mm = newdate.getMonth() + 1;
    var yyyy =  newdate.getFullYear();
    if (dd < 10) {
    dd = '0' + dd;
    } 
    if (mm < 10) {
    mm = '0' + mm;
    } 
    var someFormattedDate = mm + '/' + dd + '/' + yyyy;
    document.getElementById('to').value = someFormattedDate;
    });
}
(function() { 
    var elm = document.getElementById('duration'),
        df = document.createDocumentFragment(); 
    for (var i = 1; i <= 12; i++) { 
        var option = document.createElement('option');
        option.value = i;
        option.appendChild(document.createTextNode(i + " days")); 
        df.appendChild(option);
    }
    elm.appendChild(df); 

}()); 
</script>
</select>

这种格式的日期:mm/dd/yyyy

示例 1 从 : 07/01/2019 持续时间 : 1 天到 : 07/11/2019

示例 2 从 : 07/02/2019 持续时间 : 1 天到 : 07/21/2019

示例 3 从 : 07/03/2019 持续时间 : 1 天到 : 07/31/2019

预期成绩

从 : 07/01/2019 持续时间 : 1 天到 : 07/02/2019

标签: javascripthtml

解决方案


推荐阅读