簡體   English   中英

日期比較在jQuery中無法正常工作

[英]date comparison not working correctly in jquery

如果某個日期距當前日期不超過2周,我將嘗試向div添加一個類。 我的邏輯是這樣的,但似乎不起作用。 有任何想法嗎? 似乎沒有正確進行比較(正在將類添加到所有div中),我無法弄清楚。 謝謝你的幫助

function dateString () {
    var currentDate = new Date ();
    var twoWeeks = new Date ();
    twoWeeks.setDate(currentDate.getDate() + 14)
    var EndDateDiv = $('.end-date');


    if (currentDate <= twoWeeks) { 
        EndDateDiv.addClass('red');
  }
};

我會做:

function dateString () {
    var currentDate = new Date();
    var twoWeeks = new Date();
    twoWeeks.setDate(twoWeeks.getDate() + 14);
    var limit = 15;
    var EndDateDiv = $('.end-date');
    var diff = Math.round((twoWeeks-currentDate)/(1000*60*60*24))
    if (diff > limit) { 
        EndDateDiv.addClass('red');
    }
};

工作提琴==> https://jsfiddle.net/r1v34aty/

它按您的預期工作。 請參閱以下代碼段。

 dateString(); function dateString () { var currentDate = new Date (); var twoWeeks = new Date (); twoWeeks.setDate(currentDate.getDate() + 14) var EndDateDiv = $('.end-date'); if (currentDate <= twoWeeks) { EndDateDiv.addClass('red'); console.log($('.end-date').attr('class')); } }; 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="end-date" /> 

function dateString () {
    var currentDate = new Date ();
    var twoWeeks = new Date ();
    alert(twoWeeks);
    var EndDateDiv = $('.end-date');
    if (currentDate.getTime() <= twoWeeks.getTime()+(14*24*60*60)) { 
        EndDateDiv.addClass('red');
    console.log($('.end-date').attr('class'));      }
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM