rurounisena Ответов: 1

Как я могу использовать js (или moment.js) чтобы проверить, прошла ли дата в таблице мимо текущей даты?


У меня есть таблица в html - файле с колонкой "имя доставки" и "ожидаемая дата".

------------------------------
Ожидаемое Название | Дата Поставки
------------------------------
АРР | 5/23/2018
НД | 11/3/2019
VAANN | 29.01.2017

Я хотел бы, чтобы всплывало предупреждение и перечислялось название доставки, если соответствующая дата просрочена на 30 дней.

----------------------------
Внимание!
ВААНН просрочен на 30 дней!
ARR просрочен на 30 дней!
----------------------------

Что я уже пробовал:

var d = new Date();
var momentDate = moment(d);
var date = moment(d).format('M/DD/YYYY');
console.log(date);


$(function  () {

  $('p').each(function (index, element) {
    var $element = $(element);
      formatted = moment($element.text(), 'M/D/YYYY').format('M/D/YYYY');
      console.log(formatted);
    $element.text(formatted);

  })

});

1 Ответов

Рейтинг:
1

pankajupadhyay29

Не знаю, почему вы используете формат, когда вам нужно сравнить даты, вы должны сравнить значение даты, чтобы проверить, не пропущена ли дата оплаты на 30 дней

var datePast30Days = moment().subtract(30, days);


$(function  () {

// this could be any selector for your due date col like $('p.col-due-date')
  $('p').each(function (index, element) {
    var $element = $(element);
    var dueDate = moment($element.text(), 'M/D/YYYY');
    
    if(dueDate< datePast30Days) {

     // add your alert logic here, you can pass these values to a function or can append it to your alert box;

    }

  })

});


Подробнее читайте момент документы @ Moment.js | Документы[^]