2017-03-15 45 views
0

我建立一個數據表,並希望根據結果來比較傳入,到今天的日期的日期字符串,然後做一些事情(今天之前,今天等等等等相同)比較日期的moment.js不能正常工作嗎?

​​

所以主要是工作,但我有一個記錄,其中dateDue15-03-2017formattedDate也是15-03-2017,但我行上的css仍在激活。

我通常會期望如果datetime也涉及,我也有其他幾個值,其中dateDue15-03-2017和這些過濾正確。

+2

你比較'String's,不'Date's。你不需要格式化任何東西進行比較。 –

回答

0

您可以使用isBeforeisAfter來比較瞬間物體是<

此外,您需要刪除format(),因爲它會轉換字符串中的時間對象,所以,如註釋中所述,在您的代碼中,您正在比較時間/日期的字符串intead。

您的代碼將是:

"createdRow": function (row, data, dataIndex) { 
    var formattedDate = moment(); 
    var dateIncoming = moment(data.NextDue, 'DD-MMM-YYYY'); 
    if (dateIncoming.isBefore(formattedDate)) { 
     dateDue = true; 
    } 
    if (dateDue === true && data.AssignedToName !== "With Caller") { 
     $(row).css({ "color": "red" }); 
    } 
}