Package Exports
- tablesorter
- tablesorter/dist/js/jquery.tablesorter
- tablesorter/dist/js/widgets/widget-resizable.min.js
- tablesorter/dist/js/widgets/widget-uitheme.min.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (tablesorter) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
tablesorter (FORK) 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. This forked version adds lots of new enhancements including: alphanumeric sorting, pager callback functons, multiple widgets providing column styling, ui theme application, sticky headers, column filters and resizer, as well as extended documentation with a lot more demos.
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
- See the full documentation.
- All of the original document pages have been included.
- Information from my blog post on undocumented options and lots of new demos have also been included.
- Change log moved from included text file into the wiki documentation.
Demos
- Basic alpha-numeric sort Demo.
- Links to demo pages can be found within the main documentation.
- More demos & playgrounds - updated in the wiki pages.
Features
- Multi-column alphanumeric sorting and filtering.
- Multi-tbody sorting - see the options table on the main document page.
- Supports Bootstrap v2 and 3
- Parsers for sorting text, alphanumeric text, URIs, integers, currency, floats, IP addresses, dates (ISO, long and short formats) & time. Add your own easily.
- Inline editing - see demo
- 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.
- 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.msiewas removed; needed in the original version).
Licensing
- Copyright (c) 2007 Christian Bach.
- Original examples and docs at: http://tablesorter.com.
- Dual licensed under the MIT and GPL licenses.
Download
- Get all files: zip or tar.gz
- Use bower:
bower install jquery.tablesorter - Use node.js:
npm install tablesorter - CDNJS: https://cdnjs.com/libraries/jquery.tablesorter
Related Projects
- Plugin for Rails. Maintained by themilkman.
- UserFrosting (A secure, modern user management system for PHP that uses tablesorter) by alexweissman.
Contributing
If you would like to contribute, please...
- Fork.
- Make changes in a branch & add unit tests.
- Run
grunt test(if qunit fails, run it again - it's fickle). - Create a pull request.
Special Thanks
- Big shout-out to Nick Craver for getting rid of the
eval()function that was previously needed for multi-column sorting. - Big thanks to thezoggy for helping with code, themes and providing valuable feedback.
- Big thanks to ThsSin- for taking over for a while and also providing valuable feedback.
- Thanks to prijutme4ty for numerous contributions!
- Also extra thanks to christhomas and 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 page.
- Search the main documentation (click the menu button in the upper left corner).
- Search the 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
#tablesorterIRC channel at freenode.net. - Ask your question at Stackoverflow using a tablesorter tag.
- Please don't open a new issue unless it really is an issue with the plugin, or a feature request. Thanks!
Recent Changes
View the complete change log here.
Version 2.24.2 (11/2/2015)
- Misc
- Restory empty bower.json ignore setting... bower is installing an empty dist folder.
Version 2.24.1 (11/2/2015)
- Core
- Cache "shortDate" parser & time parser now extracts the time.
- Group
- Add optimizations from pull #830; thanks to VorontsovIE!
- Update demo to use new "weekday-index" parser when "group-date-week" is set, and updated "time" parser when "group-date-time" is set.
- Print
- Rows option now accepts custom css selectors.
- Sort2Hash
- Remove history push state as it ignored other tables on the page.
- Parsers
- Globalization parser now caches the
Globalizeobject in a same named option. - Convert month & weekday parsers to utilize globalization data.
- Add "weekday-index" parser - this parser ignores the actual date but saves the weekday from a date object
- Globalization parser now caches the
- Misc
- Revert bower.json changes in pull #1063; Fixes issue #1068.
Version 2.24.0 (10/31/2015)
- Docs
- Fix mixed content using GitHub buttons on main page. See pull #1029; thanks OmgImAlexis!
- Clarify use of pager
ajaxUrloption. - Add theme class to tables to prevent FOUC.
- Fix left menu push. The body no longer squeezes the content.
- Update stickyHeaders after menu close.
- Include horizontal scroll while jumping to search result.
- Add some examples (
filter_cssFilter).
- Global
- Call internal functions directly; stop using triggered events.
- Core
- Use plain javascript to set index attribute & remove unused variable. See issue #1048.
- Add "entire column
colspan" support. See issues #485, #746 & #1047. - Fix parser detect & sortVars on columns that don't exist due to colspan. See issues #485, #746 & #1047.
- Reformat structure & expand variable names.
- Add
rowFilterparameter togetColumnTextfunction. - Fix multisort indicators. Fixes issue #1005, again.
sortAppendnow accepts an object of column references; see Stackoverflow.- Internalize sort counter & fix spanned sorts.
- Add
"tablesorter-ready"event. - Add widget from class before adding widget options.
- Maintaining support for IE7-8 until 1/12/16.
- Chart
- Fix
chart_layoutcolumn indexing.
- Fix
- ColumnSelector
- Add
mediaqueryHiddenoption. Resolves issue #964. - Extra rows & colspans now supported in
thead&tfoot. Fixes issue #501. - Fix jscs reported issues.
- Add
- Filter
- Encode/decode filters in case they end up in cookies. See issue #1026.
- Add "entire column
colspan" support. See issues #485, #746 & #1047. hideFiltersapplies to stickyHeaders again. Fixes issue #1050.- Prevent error in
formatterUpdated. Fixes issue #1056.
- Grouping
- Prevent error if
group_forceColumnis improperly defined. See issue #1030. - Improve compatibility with jQuery Globalize; Find more details here.
- Update header in pager with
removeRows:true. Fixes issue #1035.
- Prevent error if
- HeaderTitles
- Switch to use internalized sort counter.
- Lazyload
- Add new widget. Demo
- Math
- Created new calculation type "below". It works just like "above" except in other direction starting from top to bottom. See pull #1027; thanks LvLynx!
- Tweak changes & more tweaks for better compression.
- Detach table prior to indexing all cells. See issue #1048.
- Add
math_noneoption. - Include
configparameter in math equations - needed formath_noneoption.
- Output
- Correct
formatContentfunction comment (missing widgetOptions variable) - Do not include nested table headers with parent. Fixes issue #1040.
- Correct
- Pager
- Clear tbody if no data returned by ajax. See issue #1032.
- Add "all" setting for page size methods; includes select option & all methods. See issue #1055.
- Fix pager widget demo destroy method.
- destroyPager again reveals all rows. Fixes issue #1055.
- Parse page numbers to prevent user seeing
NaN. - Parse page size updates.
- Print
- Internal variable tweaks.
- Include css to hide filter rows. Fixes issue #1046.
- Add print delay; allows browsers to render print preview.
- Scroller
- Fix
scroller_barWidthissue in iOS. See pull #1062; thanks fire-wally!
- Fix
- Sort2Hash
- Update to include pager (page & size) and filter parameters.
- SortTbodies
- Moved config string defaults to
$.tablesorter.stringsto match core reformatting.
- Moved config string defaults to
- StickyHeaders
hideFiltersapplies to stickyHeaders again. Fixes issue #1050.
- View
- Add new widget. Demo.
- Fix jscs reported issues.
- Parsers
- Globalize parser now allows a different language per column.
- Fix jscs reported issues.
- Misc
- Bower: use correct theme name. Fixes issue #1028.
- Readme: Add link to UserFrosting by alexweissman
- Updated build dependencies x2.
- Added development files & directories to bower ignore. See pull #1063; thanks jdufresne!
Version 2.23.5 (10/4/2015)
- Core:
- Remove
tabindexwhen sort is disabled. See
- Remove
- Docs:
- Add instructions on how to use the new filter option (
filter_childWithSibs). - Include filter reset in above demo.
- Fixed spelling mistake x2. See pull #1024 & #1025; thanks OmgImAlexis!
- Add note data-attribute values added to both parsed & raw data. Closes issue #983.
- Move all javascript to page bottom.
- Add instructions on how to use the new filter option (
- Filter:
- Keep parent match when no child rows match. See issue #1020.
- Ignore
filter_childWithSibswhenfilter_childByColumnisfalse. See issue #1020. - Select includes child rows when
filter_childByColumnis set.
- Pager
- Prevent hiding child rows when disabling or destroying the pager. See issue #1020.
