Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A search/filter plugin which extends the jQuery TableSorter plugin
Branch: master

Merge pull request #15 from gimpporbust/refilter-with-backspace

Filter from original rows, not current
latest commit 8cba0bb605
@jbritten authored


This tablesorterFilter plugin extends the jQuery TableSorter plugin (, written by Christian Bach, and provides the ability to search the table and filter the results.


<script type="text/javascript">
    jQuery(document).ready(function() {
        .tablesorter({debug: false, widgets: ['zebra'], sortList: [[0,0]]})
        .tablesorterFilter({filterContainer: "#filter-box",
                            filterClearContainer: "#filter-clear-button",
                            filterColumns: [0]});

Search: <input name="filter" id="filter-box" value="" maxlength="30" size="30" type="text">
<input id="filter-clear-button" type="submit" value="Clear"/>

<table id="myTable">
    <th>Last Name</th>
    <th>First Name</th>
    <th>Web Site</th>


tablesorterFilter takes up to six parameters:

    * filterContainer - (optional) The DOM id of the input box where the user will type the search string. The default is "#filter-box".
    * filterClearContainer - (optional) The DOM id of the button (or image, ...) which will clear the search string and reset the table to it's original, unfiltered state. The default is "#filter-clear-button".
    * filterColumns - (optional) An array of columns, starting at 0, which will be searched. The default is null so all columns will be searched.
    * filterCaseSensitive - (optional) Boolean stating whether the search string is case sensitive. The default is false.
    * filterWaitTime - (optional) Time after last key press to start filtering. The default is 500 (milliseconds).
    * filterFunction - (optional) Custom function to filter by column text. The default is the plugin function has_words.
    * filterFromOriginal - (optional) Filter results from original list of rows. The default is false.

You may provide multiple filters, i.e.: .tablesorterFilter( { filterColumns: [0, 1] },
                                                            { filterContainer: "#filter-box-date", filterColumns: [2], filterFunction: filterByDate } )
Please note that you always have to use only one .tablesorterFilter() call, in this example with 2 object parameters.

Search words are separated by spaces, words with a leading dash will be excluded.
Example: "include -exclude" will filter for all rows which do contain the (partitial) word "include" but at the same time do not contain the word "exclude".

You may filter programmatically: $("#filter-box").trigger("keyup").


jQuery version 1.2.1 or higher and a slightly modified jquery.tablesorter.js version 2.0.3.  Both are included in this repo.


tablesorter_filter is (c) 2008 Justin Britten (justinbritten at gmail dot com) and is dual licensed under the MIT and GPL licenses.

Something went wrong with that request. Please try again.