如何用js进行日期的加减(天数)?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Somnus_Sunshine/article/details/54344688

如何用js进行日期的加减(天数)?

HTML部分

<div class="col-md-2">
    <div class="form-group">
        <label class="control-label">开始时间:</label>
        <div class="mar_top">
            <input id="beginTime" class="form-control form_date font required"/>
        </div>
    </div>
</div>
<div class="col-md-2">
    <div class="form-group">
        <label class="control-label">提前提醒(天):</label>
        <div class="mar_top">
            <input id="preNotice" class="form-control font required number"/>
        </div>
    </div>
</div>
<div class="col-md-2">
    <div class="form-group">
        <label class="control-label">下次执行时间:</label>
        <div class="mar_top">
            <input id="nextTime" class="form-control font required"/>
        </div>
    </div>
</div>

开始时间: ID:beginTime
提前提醒: ID : preNotice
下次执行时间: ID:nextTime

页面中的JS

    $('#preNotice').change(function() {
        var beginTimeVal=$('#beginTime').val(),  //获取页面中的开始时间val(),格式为2017-01-11类型
            date='"'+beginTimeVal+'"', //拼接字符串【如果不拼接会被当做减法运算,传入的结果就为2005】
            days=$(this).val(),  //获取页面中的提前提醒时间(天)val()
            daysInt=parseInt(days);//强制转换为int类型【不转换不会报错但是时间不准确】
        var val=addDate(date,daysInt);//调用已经封装好的函数addDate
        $('#nextTime').val(val); 
    })

封装函数js

//日期加减法  date参数为计算开始的日期,days为需要加的天数   
//格式:addDate('2017-1-11',20) 
function addDate(date,days){ 
    var d=new Date(date); 
    d.setDate(d.getDate()+days); 
    var m=d.getMonth()+1; 
    return d.getFullYear()+'-'+m+'-'+d.getDate(); 
}

HTML代码片段

运行结果

展开阅读全文

没有更多推荐了,返回首页