开发者

How to check 2 date fields and compare to see which date is ahead, behind or the same

I'm working with 2 dates that are posted back to me in a textbox as strings in this format 03/02/2010. One is the current completion date and the second is the final completion date. I need to compare these 2 dates to check if the final completion date ends up being ahead, behind or the same as the current completion date.

Is there a way I can do this using javascript or jquery?

开发者_StackOverflow社区

Thanks for any help.


var passedDate1 = new Date('03/02/2010');
var passedDate2 = new Date('03/01/2010');

if (passedDate1 > passedDate2) {
   alert ('Date1 is greated than date 2');
}
else if (passedDate1 < passedDate2) {
   alert ('Date1 is less than date 2');
}
else {
   alert ('they are equal');
}


Convert it to US format

function dateUS(date)
{
    var date = date.split("/");
    return date[2] + '/' + date[1] + '/' + date[0];
}

and then

if(dateUS(dateCurrent) < dateUS(dateFinal))
{
  //your code
}


var doc = document,
dateBox1 = doc.getElementById("date1").value,
dateBox2 = doc.getElementById("date2").value,
d1, d2, diff;

//if there is no value, Date() would return today
if (dateBox1) {
    d1 = new Date(dateBox1);
} else {
    //however you want to handle missing date1
}
if (dateBox1) {
    d2 = new Date(dateBox2);
} else {
    //however you want to handle missing date2
}
if (d1 && d2) {
    //reduce the difference to days in absolute value
    diff = Math.floor(Math.abs((d1 - d2) /1000/60/60/24 ));
} else {
    //handle not having both dates
}
if (diff === 0) {
    //d1 and d2 are the same day
}
if (diff && d1 > d2) {
    //d1 is diff days after d2 and the diff is not zero
}
if (diff && d1 < d2) {
    //d1 is diff days before d2 and the diff is not zero
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜