mirror of
https://github.com/Mottie/tablesorter.git
synced 2024-11-15 23:54:22 +00:00
228 lines
14 KiB
Markdown
228 lines
14 KiB
Markdown
tablesorter is a jQuery plugin for turning a standard HTML table with THEAD and TBODY tags into a sortable table without page refreshes.
|
|
tablesorter can successfully parse and sort many types of data including linked data in a cell.
|
|
|
|
### Notice!
|
|
|
|
* Because of the change to the internal cache, the tablesorter v2.16+ core, filter widget and pager (both plugin & widget) will only work with the same version or newer files.
|
|
|
|
### [Documentation](//mottie.github.io/tablesorter/docs/)
|
|
|
|
* See the [full documentation](//mottie.github.io/tablesorter/docs/).
|
|
* All of the [original document pages](//tablesorter.com/docs/) have been included.
|
|
* Information from my blog post on [undocumented options](//wowmotty.blogspot.com/2011/06/jquery-tablesorter-missing-docs.html) and lots of new demos have also been included.
|
|
* Change log moved from included text file into the [wiki documentation](//github.com/Mottie/tablesorter/wiki/Changes).
|
|
|
|
### Demos
|
|
|
|
* [Basic alpha-numeric sort Demo](//mottie.github.com/tablesorter/).
|
|
* Links to demo pages can be found within the main [documentation](//mottie.github.io/tablesorter/docs/).
|
|
* More demos & playgrounds - updated in the [wiki pages](//github.com/Mottie/tablesorter/wiki).
|
|
|
|
### Features
|
|
|
|
* Multi-column alphanumeric sorting and filtering.
|
|
* Multi-tbody sorting - see the [options](//mottie.github.io/tablesorter/docs/index.html#options) table on the main document page.
|
|
* Supports [Bootstrap v2 and 3](//mottie.github.io/tablesorter/docs/example-widget-bootstrap-theme.html)
|
|
* Parsers for sorting text, alphanumeric text, URIs, integers, currency, floats, IP addresses, dates (ISO, long and short formats) & time. [Add your own easily](//mottie.github.io/tablesorter/docs/example-parsers.html).
|
|
* Inline editing - see [demo](//mottie.github.io/tablesorter/docs/example-widget-editable.html)
|
|
* Support for ROWSPAN and COLSPAN on TH elements.
|
|
* Support secondary "hidden" sorting (e.g., maintain alphabetical sort when sorting on other criteria).
|
|
* Extensibility via [widget system](//mottie.github.io/tablesorter/docs/example-widgets.html).
|
|
* Cross-browser: IE 6.0+, FF 2+, Safari 2.0+, Opera 9.0+, Chrome 5.0+.
|
|
* Small code size, starting at 25K minified
|
|
* Works with jQuery 1.2.6+ (jQuery 1.4.1+ needed with some widgets).
|
|
* Works with jQuery 1.9+ ($.browser.msie was removed; needed in the original version).
|
|
|
|
### Licensing
|
|
|
|
* Copyright (c) 2007 Christian Bach.
|
|
* Original examples and docs at: [http://tablesorter.com](//tablesorter.com).
|
|
* Dual licensed under the [MIT](//www.opensource.org/licenses/mit-license.php) and [GPL](//www.gnu.org/licenses/gpl.html) licenses.
|
|
|
|
### Related Projects
|
|
|
|
* [Plugin for Rails](//github.com/themilkman/jquery-tablesorter-rails). Maintained by [themilkman](//github.com/themilkman).
|
|
* [PHP templating engine for tablesorter](//github.com/alexweissman/bootsole) by [alexweissman](//github.com/alexweissman).
|
|
|
|
### Special Thanks
|
|
|
|
* Big shout-out to [Nick Craver](//github.com/NickCraver) for getting rid of the `eval()` function that was previously needed for multi-column sorting.
|
|
* Big thanks to [thezoggy](//github.com/thezoggy) for helping with code, themes and providing valuable feedback.
|
|
* Big thanks to [ThsSin-](//github.com/TheSin-) for taking over for a while and also providing valuable feedback.
|
|
* Also extra thanks to [christhomas](//github.com/christhomas) and [Lynesth](//github.com/Lynesth) for help with code.
|
|
* And, of course thanks to everyone else that has contributed, and continues to contribute to this forked project!
|
|
|
|
### Questions?
|
|
|
|
* Check the [FAQ](//github.com/Mottie/tablesorter/wiki/FAQ) page.
|
|
* Search the [main documentation](//mottie.github.io/tablesorter/docs/) (click the menu button in the upper left corner).
|
|
* Search the [issues](//github.com/Mottie/tablesorter/issues) to see if the question or problem has been brought up before, and hopefully resolved.
|
|
* If someone is available, ask your question in the `#tablesorter` IRC channel at freenode.net.
|
|
* Ask your question at [Stackoverflow](//stackoverflow.com/questions/tagged/tablesorter) using a tablesorter tag.
|
|
* Please don't open a [new issue](//github.com/Mottie/tablesorter/issues) unless it really is an issue with the plugin, or a feature request. Thanks!
|
|
|
|
### Change Log
|
|
|
|
View the [complete listing here](//github.com/Mottie/tablesorter/wiki/Changes).
|
|
|
|
#### <a name="v2.18.2">Version 2.18.2</a> (11/3/2014)
|
|
|
|
* Filter widget
|
|
* Fixed initialization intermittently stalling.
|
|
|
|
* Pager addon & widget
|
|
* Fixed pager addon javascript error.
|
|
* Fixed pager widget not firing off "pagerComplete" in non-ajax tables.
|
|
* Fixed `savePages` being overwritten on initialization.
|
|
* Fixed pager widget updating the table content in non-ajax tables.
|
|
|
|
#### <a name="v2.18.1">Version 2.18.1</a> (11/3/2014)
|
|
|
|
* Core
|
|
* Add `cssAllowClicks` option; setting "tablesorter-allowClicks" on a header cell will allow clicks to bubble up.
|
|
* A column can now be targetted using a class name within the header cell as well as the header cell itself; this only applies to previous options that could use a class name/id to target the header cell.
|
|
|
|
* Docs
|
|
* Emphasize that this is a fork of tablesorter. Fixes [issue #758](https://github.com/Mottie/tablesorter/issues/758).
|
|
* Update jQuery UI to 1.11.2.
|
|
* Update to Bootstrap 3.3.0.
|
|
* Update QUnit & fixed testing errors.
|
|
* Various updates to version numbers & corrections.
|
|
|
|
* ColumnSelector widget:
|
|
* Remove breakpoint sorting. See [pull #759](https://github.com/Mottie/tablesorter/pull/759). Thanks [yelly](https://github.com/yelly)!
|
|
|
|
* CssStickyHeaders widget:
|
|
* Fixed Chrome caption issue.
|
|
* Nested tables now work properly in IE.
|
|
|
|
* Pager addon & widget
|
|
* Fix `selectorRemove` class name parseing.
|
|
* A `pagerComplete` event now fires off immediately after initialization & once again fires on non-ajax tables.
|
|
* Fix double `pagerComplete` events firing on init & initial filter settings.
|
|
* Fix pager initialization with filter widget & displaying page output. Fixes [issue #755](https://github.com/Mottie/tablesorter/issues/755) & [issue #757](https://github.com/Mottie/tablesorter/issues/757).
|
|
* Current filters now update properly. See [issue #757](https://github.com/Mottie/tablesorter/issues/757).
|
|
|
|
* UItheme widget:
|
|
* Fixed undefined removeClass selector which previously removed all classes.
|
|
|
|
#### <a name="v2.18.0">Version 2.18.0</a> (10/26/2014)
|
|
|
|
* Core
|
|
* Move "ipAddress" parser into `parser-network.js` parser file.
|
|
* Add "image" parser to core.
|
|
* Add `widgetClass` option
|
|
* Allows adding widgets to the table by adding a table class name.
|
|
* Fix debug logs for applying widgets.
|
|
* Fixes [issue #743](https://github.com/Mottie/tablesorter/issues/743).
|
|
* Add `$cell` parameter to parser detection `is` function (`is: function(s, table, cell, $cell) { /* ... */ }`).
|
|
* Add `$table` parameter to `onRenderHeader` function (`onRenderHeader: function (index, config, $table){ /* ... */ }`).
|
|
* Fix ARIA caption label reference.
|
|
* Get column index from data-attribute when sorting.
|
|
* The `aria-labelledby` attribute is no longer to all nested captions.
|
|
* Update `widgetClass` option matching. See [issue #743](https://github.com/Mottie/tablesorter/issues/743).
|
|
* Themes
|
|
* Include caption element in metro theme; update various demo theme selectors to include the metro theme.
|
|
* Fix zebra striping in nested tables.
|
|
* Parsers
|
|
* Created `parser-network.js` parser
|
|
* Removed "ipAddress" parser from core.
|
|
* Move "ipAddress" parser into this file; a duplicate of the parser named "ipv4Address" is included.
|
|
* Moved "ipv6Address" parser into this file.
|
|
* Added new MAC parser.
|
|
* Update all date parsers to ensure a valid date is being parsed.
|
|
* Add named number parser & demo.
|
|
* Column Selector widget
|
|
* Prevent adding a media query when no priorities are set.
|
|
* `col` element will now be hidden along with the column. Fixes [issues #740](https://github.com/Mottie/tablesorter/issues/740).
|
|
* Editable widget
|
|
* Make updatable so this widget works with the pager. Fixes [issue #732](https://github.com/Mottie/tablesorter/issues/732).
|
|
* Filter widget
|
|
* Fix wildcard match logic to behave logically. Fixes [issue #727](https://github.com/Mottie/tablesorter/issues/727).
|
|
* Add `filter_cellFilter` option. Fixes [issue #731](https://github.com/Mottie/tablesorter/issues/731).
|
|
* External inputs can now target multiple columns (e.g. `data-column="0-2,4,6-7"`); see [this Stackoverflow question](http://stackoverflow.com/q/26470602/145346).
|
|
* Any match filters now properly uses `filter_ignoreCase`. Fixes [issue #748](https://github.com/Mottie/tablesorter/issues/748).
|
|
* Fix saved filter updates to multiple or "any" column inputs.
|
|
* Grouping widget
|
|
* Add "monthyear" grouping to dates. Fixes [issue #744](https://github.com/Mottie/tablesorter/issues/744).
|
|
* Pager addon & widget
|
|
* Use a sample of page number links for large collections.
|
|
* Add `maxOptionSize` option
|
|
* Tweak code & fix problems introduces in [pull #711](https://github.com/Mottie/tablesorter/pull/711).
|
|
* Thanks [camallen](https://github.com/camallen)!
|
|
* Fix ouput display not updating on initialization.
|
|
* Add url check to allow ajax updating of table. Fixes [issue #730](https://github.com/Mottie/tablesorter/issues/730).
|
|
* Check for dynamically changing `ajaxUrl` option.
|
|
* Add `ajaxObject` to the `table.config.pager` variable.
|
|
* IE requires a value attribute for every option. Fixes [issue #734](https://github.com/Mottie/tablesorter/issues/734).
|
|
* Revert some code modified for large collections to use jQuery instead of native javascript (more IE issues).
|
|
* Ensure `pager.filteredRows` is current on page move. See [issue #745](https://github.com/Mottie/tablesorter/issues/745).
|
|
* Fix empty table select showing 0 & 1 pages.
|
|
* The `fixedHeight` option is now working properly. Fixes [issue #742](https://github.com/Mottie/tablesorter/issues/742) & [issue #729](https://github.com/Mottie/tablesorter/issues/729).
|
|
* Widget cleanup & only use the last search data.
|
|
* Add note about including an ajax `success` function within the `ajaxObject` definition. See [issue #749](https://github.com/Mottie/tablesorter/issues/749).
|
|
* RepeatHeaders widget
|
|
* Now works with filtered & nested tables.
|
|
* Resizable widget
|
|
* Make it work inside of an overflow container. Fixes [issue #737](https://github.com/Mottie/tablesorter/issues/737).
|
|
* Scroller widget
|
|
* Remove `scroller_idPrefix` in lieu of a unique namespace id.
|
|
* StickyHeaders widget
|
|
* Now stacks when within a nested table.
|
|
* Wrapped sticky header components (`thead` & `caption`) in a sticky div.
|
|
* Added `stickyHeaders_xScroll` and `stickyHeaders_yScroll` options.
|
|
* Removed jQuery UI selection from the demo to allow the accordion to be properly themed.
|
|
* CssStickyHeaders widget
|
|
* Now stacks when within a nested table.
|
|
* Removed `cssStickyHeaders_zIndex` option as the widget no longer uses relative positioning (it wasn't necessary)
|
|
* Please note that **using this widget on nested tables does not work properly in ALL versions of IE** (including IE11).
|
|
* UITheme
|
|
* Ignore nested tables.
|
|
* Add method to remove previous theme.
|
|
* Fix multiple header row sort icons.
|
|
|
|
#### <a name="v2.17.8">Version 2.17.8</a> (9/15/2014)
|
|
|
|
* Core
|
|
* Fix `widthFixed` option to ignore info block tbodies.
|
|
* Make `emptyTo` & `stringTo` settings case insensitive.
|
|
* An empty string `headerTemplate` option will now prevent adding an inner div to the header.
|
|
* Docs
|
|
* Fix setting active accordion from hash script.
|
|
* Add `emptyTo` clarification.
|
|
* Main readme: Add related projects section.
|
|
* Editable
|
|
* Autoresort true no longer breaks the table.
|
|
* Update demo to use row id instead of index.
|
|
* Update validate function to allow setting it per column.
|
|
* Add `editable_focus`, `editable_blur` and `editable_selectAll` options. See [issue #708](//github.com/Mottie/tablesorter/issues/708).
|
|
* Add `editable_wrapContent` option.
|
|
* Add `editable_trimContent` option.
|
|
* Validate function now includes a contenteditable element parameter.
|
|
* All text callback parameters are now trimmed.
|
|
* Trim everything & revert widget changes.
|
|
* Refocus edited element after resort only.
|
|
* Switch form focus to focusout.
|
|
* Filter
|
|
* Add `filter_defaultFilter` option.
|
|
* fix issue with using class selectors.
|
|
* Make happy with spaces within the query.
|
|
* Will override exact/partial select filters. Fixes [issue #721](//github.com/Mottie/tablesorter/issues/721).
|
|
* Fixes [issue #704](//github.com/Mottie/tablesorter/issues/704).
|
|
* Add `filter_excludeFilter` option; add multiple exclusions separated by spaces, not commas.
|
|
* Prevent multiple searches during initialization.
|
|
* Ensure initial filter settings get applied.
|
|
* Selects will exactly match the selected option unless "filter-match" class is set. Fixes [issue #721](//github.com/Mottie/tablesorter/issues/721).
|
|
* Pager
|
|
* Update cache & rows copy. Fixes [issue #703](//github.com/Mottie/tablesorter/issues/703).
|
|
* Use native javascript to populate & set the goto select. Fixes [issue #711](//github.com/Mottie/tablesorter/issues/711).
|
|
* Custom pager controls. Fix control updates for multiple tables.
|
|
* Fix pager widget to be properly applied after a page move.
|
|
* StickyHeaders: Fix issue so it works with jQuery v1.2.6 again.
|
|
* Zebra: Apply style to one row. Fixes [issue #715](//github.com/Mottie/tablesorter/issues/715).
|
|
* Parser
|
|
* Duration parser - added with [demo](//mottie.github.io/tablesorter/docs/example-parsers-duration.html).
|
|
* Select parser - Fix for IE10+ not allowing select options to be clicked.
|
|
* IgnoreArticles parser - Added `ignoreArticlesExcept` option.
|
|
* url parser - ensure it is used by the filter widget.
|