获取结束日期表单开始日期和天数

时间:2016-05-01 19:30:25

标签: jquery

我想从表单中选择的天数和开始日期设置结束日期的值。我试过这个,但它不起作用。

$(document).on('change', "#startDate", function (e) {
    e.preventDefault();
    var nbDays = $("#nbDays").val();
    var startDt = $("#startDate").val();
    var endDt = $("#endDate").val();

    $("#endDate").val(startDt + nbDays)   ;

});

2 个答案:

答案 0 :(得分:1)

jQuery对处理日期没什么大帮助。尝试moment.js进行日期操作!

moment.js可以将字符串解析为日期对象:

startDate = moment(startDate_string);

它可以做补充:

endDate = startDate.add( nbdays, 'days');

它可以帮助将日期再次格式化为字符串(您可以根据语言/语言环境的日期约定更改此内容)

endDate.format('MM/DD/YYYY');

有关完整的示例代码,请参阅https://jsfiddle.net/bjelline/24440qqr/

答案 1 :(得分:0)

使用javascript Date对象。这个问题已经回答了多个地方。以下是previous SO thread修改为您的规格的一个示例:

$(document).on('change', "#startDate", function (e) {
    e.preventDefault();
    var nbDays = $("#nbDays").val();
    var startDt = $("#startDate").val();

    //Depeneding on the what the startDt value is, 
    //you may have to use a different date constructor
    var dat = new Date(startDt);
    dat.setDate(dat.getDate() + nbDays)

    //Depending on what the required output format is,
    //you may want to grab the MM DD YY of date and format
    //to your specs
    $("#endDate").val(dat);

});

Here's the documentation在javascript Date对象上。