如何按ID值从新到旧的顺序对JSON进行排序?
HTML:
<script>
$(document).ready(function() {
var url = "json.php";
$.getJSON(url, function(result) {
console.log(result);
$.each(result, function(i, field) {
var id = field.id;
var name = field.name;
var category = field.category;
$("#show_data").append("<li class='item'>"+"<div>"+ id +"</div>"+ "<p>"+ name +"</p>" +"<p>" + category +"</p></li>");
});
});
});</script><body><ul><div id="show_data"></div><ul>
Json.php:
[{
"id": "1",
"name": "Mary",
"category": "eng"
}, {
"id": "2",
"name": "Peter",
"category": "super"
}, {
"id": "3",
"name": "Ben",
"category": "math"
}]
结果:
id:1
name:Mary
category:eng
id:2
name:Peter
category:super
id:3
name:Ben
category:math
我希望结果是:
id:3
name:Ben
category:math
id:2
name:Peter
category:super
id:1
name:Mary
category:eng
id:3 --> id-->2 id:--1
最佳答案
在操作dom之前,按result
降序对id
进行排序
var sortedResult = result.sort(function(a, b) {
return b.id - a.id
})
$.each(sortedResult, function(i, field) {
// Rest of the code
});