一个微小的&;用于可排序表的死的简单jQuery插件。

Posted

tags:

中文标题:一个微小的&;用于可排序表的死的简单jQuery插件。 原文标题:A tiny & dead-simple jQuery plugin for sortable tables. 项目评级:Star:263      Fork:99 下载地址:https://github.com/kylefox/jquery-tablesort 详情介绍

一个微小的&;用于可排序表的死的简单jQuery插件。这是一个基本的演示。

通缉维护人员

我不再经常使用这个图书馆了,也没有时间单独维护它。

如果你有兴趣帮助我维护这个图书馆,请告诉我!点击此处阅读更多»

非常感谢您的帮助!

安装

只需添加jQuery&;页面的tablesort插件:

(该插件也与Zepto.js兼容)。

它也可以通过npm获得

npm install jquery-tablesort

和蝴蝶结

bower install jquery-tablesort

基本用途

在要进行排序的表上调用适当的方法:

单击列标题时,将对表进行排序。

为了防止列可排序,只需添加no-sort类:

您的表格应遵循以下通用格式:

注意:如果您有权访问表标记,最好包装您的表行

<thead><tbody>元素中(见下文),导致排序稍微快一些。

如果您不能使用<thead>,插件将通过对所有<tr>行进行排序而回退

使用jQuery的.has()方法包含<td>元素(即标题行,

包含<th>元素,将保留在其所属的顶部)。

如果你想要一些无图像箭头来指示排序,只需将其添加到你的CSS中:

单元格的排序方式

目前,使用字符串比较对单元格进行天真的排序。默认情况下,使用<td>的文本,但您可以通过在单元格中添加data-sort-value属性来轻松覆盖它。例如,要在保持单元格内容人性化的同时按日期排序,只需将时间戳添加为data-sort-value

这允许您使用自己的标准对单元格进行排序,而无需编写自定义排序函数。它还保持了插件的轻量级,不需要猜测&;解析日期。

定义自定义排序函数

如果您有特殊要求(或者不想像上面的例子那样把标记弄得乱七八糟),您可以很容易地挂接自己的函数,该函数可以确定给定单元格的排序值。

自定义排序函数使用data()附加到<th>元素,用于确定该列中所有单元格的排序值:

排序函数传递三个参数:

自定义比较函数

如果需要实现更高级的排序逻辑,可以指定compare设置的比较功能。该功能的工作方式与Array.prototype.sort()接受的compareFunction相同:

事件

正在排序的<table>元素、'tablesort:start'元素和'tablesort:complete'元素触发以下事件。eventtablesort实例作为参数传递:

表排序实例

可以通过查询数据对象来检索表的tablesort实例:

属性:

方法:

默认排序

可以使用上述.sort()方法在页面加载时应用默认排序。只需获取tablesort实例并调用.sort(),在要排序的<th>元素中填充即可。

假设您的标记为<table class="sortable">,并且默认情况下要排序的列为<th class="default-sort">,那么您将写:

设置

以下是支持的选项及其默认值:

您还可以更改全局调试值,该值将覆盖实例的设置:

选择

我不再使用这个插件了——大多数修复程序&;贡献者提供了改进。

如果这个插件不能满足您的需求,并且您不想提交拉取请求,这里有一些替代的表排序插件。

(打开新一期,可以提出更多建议)

贡献

一如既往,欢迎所有建议、错误报告/修复和改进。

使用闭包编译器最小化JavaScript(默认选项)

特别感谢您在以下任何方面提供帮助:

请分叉并发送拉取请求,或报告问题。

许可证

jQuery tablesort是在MIT许可证下分发的。

了解更多信息,请访问http://opensource.org/licenses/mit-license.php

版权所有(c)2012 Kyle Fox

特此免费授予任何获得许可的人

该软件和相关文档文件的副本(

“软件”),不受限制地处理软件,包括

但不限于使用、复制、修改、合并、发布、,

分发、分许可和/或出售软件副本,以及

允许向其提供软件的人员这样做,但须遵守

以下条件:

上述版权声明和本许可声明应

包含在软件的所有副本或实质部分中。

该软件是“按原样”提供的,不提供

NY类,

明示或暗示,包括但不限于

适销性、特定用途的适用性以及

无侵权。在任何情况下,作者或版权持有人

对任何索赔、损害赔偿或其他责任负责,无论是在诉讼中

合同、侵权或其他方面的,由、由或与之相关

与软件或软件中的使用或其他交易。

如何为 Bootstrap 实现支持拖放的触摸敏感、响应式、可排序列表?

界面生成器中的死插座/操作错误

如何在 PostgreSQL 8.2(用于 Greenplum)中找到死元组(碎片)?

jQuery 的 $().each() 的排序顺序是不是得到保证?

147. [链表]对链表进行插入排序

jQuery Grid With ASP.Net MVC