如何将xml行中的日期与今天的日期进行比较

时间:2012-10-29 05:08:09

标签: javascript jquery

我有一个xml文件,使用sharepoint中的jquery检索。 xml的一行如下所示。

<z:row ows_Title='Have dinner party with Host' ows_Due_x0020_Date='2012-05-10 00:00:00' ows_MetaInfo='1;#' ows__ModerationStatus='0' ows__Level='1' ows_ID='1' ows_UniqueId='1;#{2A8F277A-C95B-420C-89A9-3B979F95C8F4}' ows_owshiddenversion='3' ows_FSObjType='1;#0' ows_Created='2012-10-25 03:19:35' ows_PermMask='0x7fffffffffffffff' ows_Modified='2012-10-29 00:56:09' ows_FileRef='1;#personal/Inclusions/Lists/Events/1_.000' />

现在我想退出“截止日期”栏目,并与今天的日期进行比较。对于检索日期,没有问题。但是如何比较这两个日期呢?为了比较今天的日期我就这样使用了。

    var k = new Date();
    var year = k.getYear();
    var month = k.getMonth();
    var day = k.getDate();
    var fulldate = year+"-"+month+"-"+day

但它只显示日期。在xml中我们也有时间。我不想与时间比较。我想比较日期。怎么实现呢?我想把整个过程放在以下函数中。

$(xData.responseXML).find("z\\:row").each(function() { 
          //here i want to compare that date column with present date

});

最后我想,xml中的日期是否小于今天的日期?

3 个答案:

答案 0 :(得分:1)

这样的事情:

function isPastDate( date ) {
  return (new Date( date )).getTime() < (new Date()).getTime();
}

答案 1 :(得分:1)

强烈建议使用Date.js库进行所有比较和格式化方法,这些方法可以使大量日期工作大大简化

http://www.datejs.com/

答案 2 :(得分:0)

最后需要比较如下。

function compareDates(passdate)
    {   
        var splitdate = passdate.split(" ");
        var splitdate1 = splitdate[0].split("-");
        var newdate = splitdate1[1]+"-"+ splitdate1[2]+"-"+splitdate1[0];
        return ((Date.parse(newdate)) < (new Date()).getTime());
    }