JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    :arrow_up_down: A small tablesorter in plain JavaScript
    Filed under 

    • 🔾47%Overall
    • 963
    • 19.9 days
    • 🕩170
    • 👥23

    tablesort

    A small & simple sorting component for tables written in JavaScript.

    npm version Build Status

    Quick start

    Download the ZIP of this repository or install via command line:

    npm install tablesort 
    # Or if you're using Yarn 
    yarn add tablesort
    
    <script src='tablesort.min.js'></script>
    
    <!-- Include sort types you need -->
    <script src='tablesort.number.js'></script>
    <script src='tablesort.date.js'></script>
    
    <script>
      new Tablesort(document.getElementById('table-id'));
    </script>
    

    See usage and demos for more


    Browser Support

    Chrome logo Firefox logo Internet Explorer logo Opera logo Safari logo
    8+ ✔ 3.6+ ✔ 10+ ✔ 11.50+ ✔ 5.1+ ✔

    Node/Browserify

    // npm install tablesort
    var tablesort = require('tablesort');
    
    tablesort(el, options);
    

    Default CSS

    Add the styling from tablesort.css file to your CSS or roll with your own.

    Extending Tablesort

    If you require a sort operation that does not exist in the sorts directory, you can add your own.

    Tablesort.extend('name', function(item) {
    
      // Regular expression to test against.
      // `item` is a table value to evaluate.
      return /foo/.test(item);
    }, function(a, b) {
    
      // Custom sort functionality goes here.
      // e.g var n = (a > b) ? -1 : 1;
      return n;
    });
    

    If you've made an extend function that others would benefit from pull requests are gladly accepted!

    Contributing

    Tablesort relies on Grunt as its build tool. Simply run npm run build to package code from any contributions you make to src/tablesort.js before submitting pull requests.

    Tests are run via:

    npm install && npm test
    

    Licence

    MIT

    Bugs?

    Create an issue

    Show All