Jquery найти, если дата находится в диапазоне дат - PullRequest
0 голосов
/ 29 октября 2019

Поэтому я пытаюсь определить, находится ли определенная дата между двумя другими датами, и затем отображать правильный текст div. У меня это работает до определенного момента, но, кажется, не работает проверка нескольких делений. Вот то, что я имею ниже, в основном он использует div «selected-selected» и просматривает каждый div «date», чтобы найти совпадение даты.

Кажется, что это работает, если дата 02/01/2019,но если я установлю дату на 02/01/2020, он не найдет правильный div, который должен быть 02/01 / 2020-01 / 01/2021. Кто-нибудь знает в чем проблема?

// on click
$(".check").click(function() {
  // foreach date div
  $(".date").each(function() {
    var firstdate = $(this).text().split('-')[0];
    var lastdate = $(this).text().split('-')[1];
    var fDate, lDate, cDate;
    fDate = new Date(firstdate); // firstdate
    lDate = new Date();
    lDate.setDate(lDate.getDate(lastdate)); // lastdate
    cDate = new Date($('.date-selected').text()); // date to check if between

    if (Date.parse(cDate) <= Date.parse(lDate) && Date.parse(cDate) >= Date.parse(fDate)) {
      // output matched date
      $('.correct-date').text('Date between: ' + $(this).text());
      return true;
    }
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="date-selected">02/01/2020</div>
<div class="date">01/01/2019-01/01/2020</div>
<div class="date">02/01/2020-01/01/2021</div>
<div class="correct-date"></div>
<button class="check">check</button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...