Получить Javascript для переноса даты на следующий месяц - PullRequest
1 голос
/ 11 ноября 2011

Вот jsfiddle: http://jsfiddle.net/fDm2p/ Все в рабочем состоянии, кроме как к концу, месяц не переворачивается и показывает даты, которые явно не существуют.Может кто-нибудь помочь мне изменить мой существующий код, чтобы заставить это работать?Я использую класс TD в качестве «добавить номер»

Ответы [ 2 ]

4 голосов
/ 11 ноября 2011

http://jsfiddle.net/fDm2p/2/

$(document).ready(function() {
    $("#calcShptable td").each(function() {
        var theDate = new Date();
        var addNum = parseInt($(this).attr("class"));

        theDate.setDate(theDate.getDate()+addNum);

        myDate = (theDate.getMonth() + 1) + '/' + (theDate.getDate()) + '/' + theDate.getFullYear();
        $(document.createTextNode(myDate)).appendTo(this);
    });
});

Использование setDate с номером, который слишком велик, справится с переносом.

1 голос
/ 11 ноября 2011

Я считаю, что вы не можете просто добавить дни в функцию getDate (), но вместо этого вам нужно создать совершенно новый объект Date, добавив количество дней в представление getTime () за сегодня:

    $(document).ready(function(){
    var today  = new Date();
    $("#calcShptable td").each(function() {
        var addNum = parseInt($(this).attr("class"));
        var theDate = new Date(today.getTime() + (addNum * 86400000));
        myDate = (theDate.getMonth() +1) + '/' + (theDate.getDate()) + '/' + theDate.getFullYear();
        $(document.createTextNode(myDate)).appendTo(this);
    });
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...