javascript - 日期比较(将事件日期与当前日期进行比较)

标签 javascript jquery date

我有一个事件列表,我想自动隐藏不再是最新的事件。这意味着我必须将每个事件的日期与当前日期进行比较。因此,如果今天是 23.02.2018,则应隐藏日期为 06.01.2018 的事件,但应显示日期为 08.03.2018 的事件。有人可以帮我吗?我迷路了……

var today = new Date();
var date1 = today.getFullYear() + "/" + today.getMonth() + "/" + today.getDate();
var date2 = $(".event").data("date");

date3 = new Date(date1);
date4 = new Date(date2);


  if (date3.getTime() > date4.getTime()); { 
    $(".event").hide();
    $(".event").attr("value", "");
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<p><strong>EXAPLE</strong></p>
<p>Today is 23.02.2018</p>
  <div id="event-list">
  <div class="event" data-date="2018/01/06" value="search">06.01.2018 - should be hidden</div>
  <div class="event" data-date="2018/02/07" value="search">07.02.2018 - should be hidden</div>
  <div class="event" data-date="2018/03/08" value="search">08.03.2018 - should be visible</div>
</div>
                       

最佳答案

可以解析data-date属性,形成一个有效的日期,然后与今天进行比较。如果小于则隐藏对应的元素。

使用jQuery.each() 迭代所有匹配选择器的元素。了解更多信息 here .

var today = new Date().getTime();

$("#event-list .event").each(function(){
  var eventDate = $(this).attr("data-date");
  eventDate = new Date(eventDate).getTime();
  
  if(eventDate < today)
    $(this).hide();
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<p><strong>EXAPLE</strong></p>
<p>Today is 23.02.2018</p>
  <div id="event-list">
  <div class="event" data-date="2018/01/06" value="search">06.01.2018 - should be hidden</div>
  <div class="event" data-date="2018/02/07" value="search">07.02.2018 - should be hidden</div>
  <div class="event" data-date="2018/03/08" value="search">08.03.2018 - should be visible</div>
</div>

关于javascript - 日期比较(将事件日期与当前日期进行比较),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48950584/

相关文章:

JavaScript Datatable.JS/PHP MySQLi 排序问题

jquery - 选择选项悬停

jquery - 在窗口卸载之前调用 jquery ajax 函数的 final方法是什么?

javascript - 如果输入日期少于 4 个月,则禁用按钮

javascript - 当轴标签映射为刻度域的一部分时,如何在 d3 中修改堆积条形图的轴标签

javascript - 回调未执行

javascript - 如何清除谷歌地图中的现有标记?

javascript - Highcharts : using same div to load a chart multiple times with different series data

javascript - 设置 JavaScript 日期格式并添加 365 天

php - 如何调整sql查询中的时间戳?