javascript - 使用 JQuery 排序插入

标签 javascript jquery sorting

我有一个类似的代码(从外部服务渲染信息):

var myList =  {'id1' : {prop1:'v1', prop2:'v2'}, 
               'id2' : {prop1:'v3', prop2:'v4'}}; 

for (var k in myList) {
    var html = '<div id="xxx">stuff</div>';
    html.data('item', myList[k]);
    $('#parentDiv').append(html);
}

因为在使用 for (x in y) 时我不能依赖顺序,所以我想将元素插入特定位置,假设按 prop1 排序。

那么,如何将附加更改为 prop1 立即小于插入的实际元素的元素之后的插入?

最佳答案

如何使用数组:

var myList =  {'id1' : {prop1:'v1', prop2:'v2'}, 
               'id2' : {prop1:'v30', prop2:'v4'},
               'id3' : {prop1:'v13', prop2:'v4'}},
    sorted = []; 

for (var k in myList) {
    sorted.push(myList[k]);
}
sorted.sort(function (a,b) {
 return a.prop1 > b.prop1;   
});

for (var i = 0; i < sorted.length; i++) {
    var html = '<div id="xxx">stuff</div>';
    html.data('item', sorted[i]);
    $('#parentDiv').append(html);
}

关于javascript - 使用 JQuery 排序插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7678495/

相关文章:

javascript - 如何将 JavaScript 字符串下载为文件

javascript - 使用 HTML Unicode 表达式的 D3 数字格式

javascript - jquery 将值复制到其他区域

javascript - 在 javascript 中 for 循环在 get 方法执行之前执行

c - 为什么我在大输入时遇到 scanf 的段错误

php - 在PHP中的每个级别递归排序多维数组

php - 排序一个整数数组,负整数排在前面,正整数排在后面

javascript - Safari 中的 Google Adsense、CORS 和 Rails 转储了数千个控制台错误

javascript - 使表格的第一列始终可见

jquery - 如何将标签转换为文本框?