javascript - 对可排序列表进行排序

标签 javascript jquery jquery-ui sorting jquery-ui-sortable

我使用 Jquery UI 让用户对列表进行排序。如果他们愿意,我有一个按钮可以显示答案,这将根据 ID 对列表进行排序。对列表进行排序的函数是:

function show_order() {

    var elems = $('#sortable').children('li').remove();
    elems.sort(function(a,b){
        return parseInt(a.id) > parseInt(b.id);
    });
    $('#sortable').append(elems);
}

这在 Chrome 和 Firefox 中运行良好,但在 IE (11) 中运行不正常 - 在控制台中没有错误。

参见 http://jsfiddle.net/bvacK/例如。

最佳答案

.sort 期望您返回一个小于 0 的值(a 小于 b)、0(等于)或一个更大的值大于 0(a 大于 b)。简单地返回 > 比较的结果将产生一个 bool 值。相应地更改您的代码:

return parseInt(a.id, 10) - parseInt(b.id, 10);

关于javascript - 对可排序列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23470742/

相关文章:

jquery - 多雇主对员工管理

jQuery UI 对话框阻止 Google Chrome 中的窗口滚动条

JavaScript 对象文字 "this"关键字 jQuery 回调参数传递

jquery - Bfrtip(按钮)和数字下拉列表之间的冲突

javascript - 使用json上传导致缺少模板错误

jquery - 位置固定的垂直标签内容

javascript - 使用 jQuery formwizard 重新加入分支?

javascript - typescript 递归函数组合

javascript - 溢出的 div 的内容高度 :auto

javascript - 如何设置 ionic2 的选定 ng