如何正确增加或减少日期中的日期?

时间:2019-04-10 14:55:19

标签: javascript jquery html

我试图在Javascript中将h5设置为数据属性,然后单击当前日期,第二天和前一天。

因此,如果今天是4月10日,则第二天应该是下一个12天,而下一个12天应该是倒数模式。

问题是,在我的代码中,如果今天是4月10日,则将日期设置为2或2或更佳,第二天将是12和下一个14,但我无法确定问题出在哪里。

这是JavaScript部分

function setData(data) {
  if (data == "today") {
    $("#day").attr('data-giorno', new Date());
  }
  
  if (data == "prev") {
    var ieri = new Date($("#day").attr('data-giorno'));
    ieri.setDate(ieri.getDate() - 1);
    $("#day").attr('data-giorno', ieri);
  }
  
  if (data == "next") {
    var domani = new Date($("#day").attr('data-giorno'));
    domani.setDate(domani.getDate() + 1);
    $("#day").attr('data-giorno', domani);
  }
}

$('.btn-group input[type="button"][data-calendar-nav]').each(function() {
  var $this = $(this);
  $this.click(function() {
    setData($this.data('calendar-nav'));
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row  text-center">
  <div class="col">
    <div class="pull-left">
      <h3 id="day" data-giorno="Wed Apr 10 2019 16:53:47 GMT+0200 (Ora legale dell’Europa centrale)">10 aprile 2019</h3>
    </div>
  </div>
  <div class="col">
    <div class="btn-group pull-right">
      <input type="button" class="btn btn-primary btn-sm" data-calendar-nav="prev" value="<<" />
      <input type="button" class="btn btn-light btn-sm" data-calendar-nav="today" value="Oggi" />
      <input type="button" class="btn btn-primary btn-sm" data-calendar-nav="next" value=">>" />
    </div>
  </div>
</div>

0 个答案:

没有答案