jQuery.每个对象排序
jQuery .each object ordering
我有一个PHP文件,它为某些类抓取一个外部URL,然后将它们放入一个数组中。然后,我使用json_encode()对数组进行了编码。数组的迭代顺序是必须的,但由于某些原因,JSON没有按正确的顺序迭代。它是按降序排列的,而不是按升序排列的。
以下是返回的JSON示例:
[{
"id":1,
"info":
{
"title":"Design Prepaid cards with HD quality ",
"titleurl":"http:'/'/www.peopleperhour.com'/job'/design-prepaid-ards-with-hd-quality-380258",
"price":"'u00a3 400 ",
"urgent":"Urgent",
"jobID":"380258"
}
},
{
"id":2,
"info":
{
"title":"Charted accontant",
"titleurl":"http:'/'/www.peopleperhour.com'/job'/charted-accontant-380251",
"price":"'u00a3 60 ",
"urgent":"Urgent",
"jobID":"380251"
}
}]
这就是我当前显示JSON:的方式
var jsonResults = JSON.parse(data);
var count = (jsonResults.length);
// Iterate Through Results
$.each(jsonResults, function(key, value)
{
// Display Data
$('#resultsPanel').fadeIn('slow');
$('#resultsPanel').prepend(
'<div class="item" id="'+ value.info.jobID +'">'+
'<div class="title"><a href="'+ value.info.titleurl+'" target="_blank">'+ value.info.title +'</a></div>'+
'<div class="price">'+ value.info.price +'</div>'+
'</div>'
);
});
是否可以订购JSON?
参见本部分:
$('#resultsPanel').prepend(
"prepend"的意思是"放在开头",这将颠倒你的列表(把项目1放在开头,然后把项目2放在开头等)。我很确定你的意思是:
$('#resultsPanel').append(
对象是未排序的集合。您不能以跨浏览器兼容的方式指定订单。没有原始订单的概念,除非它已经按照规则进行了排序。
因此,对服务器上的数据进行排序,然后以相同的排序顺序对其进行枚举。
编辑
正如我在下面提到的,我的jQuery知识是最少的,但也许这样的东西可以工作:
var jsonResults = JSON.parse(data);
Object.keys(jsonResults).reverse().forEach(function (key, value) {
// do something here
});
还有一个类似的问题可能会给你答案:在javascript 中对json对象进行排序
相关文章:
- 在循环Handlebars之前重新排序对象键
- 将SortedMap从Java转换为Javascript中可读的排序对象
- 模仿`overflow-y:auto;overflow-x:visible `在jQuery UI可排序对象上
- Javascript排序对象日期
- Jquery UI:如何指示可拖动对象成功拖放到可排序对象上
- 删除数组中重复的未排序对象
- Javascript 递归地排序对象和嵌套对象以及数组
- 如何在目标可排序对象接收后获取拖动项的类
- Javascript:排序对象挑战
- 在 JavaScript 中合并多个排序对象数组的最有效方法是什么?
- 如何在角度UI中加载保存的可排序对象
- 任意重新排序和排序对象文字的 JavaScript 数组
- 使用下划线在javascript中重新排序对象
- 排序对象的多维数组与一个可变的深度在Javascript
- 在javascript中,排序对象不会传递给字符串变量
- JavaScript快速排序对象
- 在JavaScript数组中按键值排序对象
- 用布尔值排序对象
- 如何在D3.js中通过JSON文件解析按键排序对象
- Javascript如何按键排序对象,但不破坏原始对象的顺序