使用AM对日期和时间进行排序| jQuery中的PM

时间:2018-09-17 02:38:24

标签: javascript jquery html jquery-ui

我有我的Javascript以升序对日期进行排序(即,从最新的日期开始排列)。我可以为日期做,但是我无法用AM或PM来排序时间。我可以24小时制做。但不是在12小时内。我已经附加了fiddle,有人可以帮我吗。

function sortAscending(a, b) {
var date1 = $(a).find("time").text();

var date2 = $(b).find("time").text();

return new Date(date1 < date2);

}

1 个答案:

答案 0 :(得分:2)

您可以使用以下代码,先解析日期格式date1.replace("pm"," PM").replace("am"," AM"),然后再将其解析为日期以进行比较

function sortAscending(a, b) {
    var date1 = $(a).find("time").text();

    var date2 = $(b).find("time").text();

    date1 = Date.parse(date1.replace("pm"," PM").replace("am"," AM"));

    date2 = Date.parse(date2.replace("pm"," PM").replace("am"," AM"));

   return new Date(date1 > date2);

}

$(document).ready(function() {
    $('#wrapper .cards').sort(sortAscending).appendTo('#wrapper');
});

它将输出

02
2012/04/20 02:41am
01
2012/04/20 10:25am
04
2012/04/20 10:45am
03
2012/04/20 07:00pm