使用jQuery将日期添加到日期

时间:2009-11-04 21:35:19

标签: jquery asp.net html asp.net-mvc

我有一个简单的MVC表单,其中包含以下元素:

<%= Html.TextBox("FechaInicio") %>

哪个有开始日期。

<%= Html.TextBox("Meses") %>

我想要添加的月数。

我想在第一个文本框中输入日期,添加在第二个文本框中输入的月数并获取该值。

3 个答案:

答案 0 :(得分:2)

使用您建立的任何日期形成,将FechaInicio的值解析为yearmonthday。获取Meses

的值
// Magical parsing of `FechaInicio` here
var year = 2010, month = 9, day = 14;
// The value of `meses`
var meses_mas = 3;

var future_date = new Date(year, month + meses_mas, day);

console.log(future_date);

你最终会得到Wed Apr 14 2011 00:00:00 GMT-0700 (PST)(时区可能会有所不同)。 JavaScript的Date对象将为您处理月溢出。

另外,作为旁注,Date将月份视为零索引(0 = 1月... 11 = 12月)。

答案 1 :(得分:0)

我将开始日期的值解析为javascript日期对象。然后使用下面的内容。

var startDate = parseDate();
var monthsToAdd = getMonthsToAdd();

while (startDate.getMonth() + monthsToAdd > 11) {
  startDate.setFullYear(startDate.getFullYear() + 1);
  monthsToAdd - 11;
}

startDate.setMonth(startDate.getMonth() + monthsToAdd);

答案 2 :(得分:0)

        var numofMonthtoAdd = 5; //number of month you may want to add

        var beginDate = new Date();
        var month = (parseInt(beginDate.getMonth()) + parseInt(numofMonthtoAdd )) % 12;
        var year = (parseInt(beginDate.getMonth()) + parseInt(numofMonthtoAdd )) / 12;
        beginDate.setMonth(month);
        beginDate.setFullYear(parseInt(beginDate.getFullYear()) + year );
        return beginDate;