jquery - jQuery 插件如何对 HTML 表格进行排序?

标签 jquery algorithm html-table

我有一个自定义表格,它具有自定义格式,这使得应用现有的表格排序插件变得非常不可能。

大多数插件如何在标准 HTML 表格上实现这一点。

只是一个基本的、简单的项目符号解释就可以了。只是想了解一下它是如何工作的。

最佳答案

好吧,我从未看过此类插件的源代码,但我认为它是这样工作的。

HTML 表格是一种矩阵,您可以这样表示它:

var table = [
 ['Id', 'Name',    'Phone number',   'Email'],
 [2,    'Boris',   '+33686868686',   'ahah@example.com'],
 [1,    'You',      null,            'foo@bar.baz'],
 [5,    'Anyone',   null,            null]
];

使用这样的矩阵,您可以像这样重新排序:

table.sort(function(a, b) {
   return ((a[0] == b[0]) ? 0 : ((a[0] > b[0]) ? 1 : -1));
});

结果:

 ['Id', 'Name',    'Phone number',   'Email'],
 [1,    'You',      null,            'foo@bar.baz'],
 [2,    'Boris',   '+33686868686',   'ahah@example.com'],
 [5,    'Anyone',   null,            null]

然后,您通过使用已排序数组移动行来重新排序。

显然,你会有更复杂的排序算法,但我认为基本上是这样完成的。

关于jquery - jQuery 插件如何对 HTML 表格进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11136186/

相关文章:

sql - 比SOUNDEX更好的东西

php - 如何在表中显示 mysql 多行/mysql_fetch_array 结果?

javascript - 在JQUERY中如何发现一个页面中的所有ajax调用都已经完成?

javascript - 嵌套的 $(document).ready() 和 $(window).load() 事件之间的区别

algorithm - While 循环中包含收缩列表的算法的大 O 表示法

css - 如何让 Outlook 正确显示我的表格

javascript - 使用 JQuery 使用对象填充表

jquery,选项值

javascript - Highcharts 仪表在通过 json 获取数据之前渲染

algorithm - 可变长度空闲列表