【问题标题】:sorting date and Time with AM | PM in jquery使用 AM 排序日期和时间 | jQuery中的PM
【发布时间】:2018-09-17 02:38:24
【问题描述】:
我有我的 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);
}
【问题讨论】:
标签:
javascript
jquery
html
jquery-ui
【解决方案1】:
您可以使用以下代码,您需要先修复日期格式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