Неправильная дата с моментом JS плагинов - PullRequest
1 голос
/ 26 февраля 2020

Попытка сгенерировать 15-дневную опережающую дату, используя момент JS, но не начинается с сегодняшней даты, а накануне.

 console.log( "Today's date : " + d1.getDate().toString())
            for (i = 1; i <= 15; i++) {
                console.log(moment(d1).day(i, 'd').format('MM/DD/YYYY') )
                selectDt.append($("<option></option>")
                    .attr("value", moment(d1).day(i,'d').format('MM/DD/YYYY'))
                    .text(moment(d1).day(i,'d').format('MMM-DD,YYYY'))
                    .prop("selected", (selval != undefined) ? (moment(d1).day(i,'d').format('MMM-DD,YYYY') == selval) : '')
            )
        }

Результат равен

enter image description here

1 Ответ

1 голос
/ 26 февраля 2020

Мое решение - использовать метод момента add для получения после 15 дат. Если вы хотите до 15, используйте метод subtract.

Для вашего кода с моими изменениями.

console.log( "Today's date : " + d1.getDate().toString())
for (i = 0; i <= 15; i++) {
    console.log(moment(d1).add(i, 'd').format('MM/DD/YYYY') )
    selectDt.append($("<option></option>")
        .attr("value", moment(d1).add(i,'d').format('MM/DD/YYYY'))
        .text(moment(d1).add(i,'d').format('MMM-DD,YYYY'))
        .prop("selected", (selval != undefined) ? (moment(d1).day(i,'d').format('MMM-DD,YYYY') == selval) : '')
    )
}

Мой рабочий код

var d1 = new Date();
console.log( "Today's date : " + d1.getDate().toString())
for (i = 0; i <= 15; i++) {
    console.log(moment(d1).add(i, 'day').format('MM/DD/YYYY') )
}

Мой вывод

enter image description here

...