node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »


jQuery Searcher Plugin

The jQuery Searcher Plugin connects any list-like data with an input for searching.


Download the latest release of this plugin on GitHub.

Include the jquery.searcher.js script after the jQuery library (unless you are packaging scripts somehow else):

<script src="/path/to/jquery.searcher.js"></script>


    itemSelector:  "...", // jQuery selector for the data item element 
    textSelector:  "...", // jQuery selector for the element which contains the text 
    inputSelector: "..."  // jQuery selector for the input element 


See the live version of the following example on the GitHub page.

Given the following HTML markup:

<input id="tablesearchinput" />
<table id="tabledata">
            <td>Like a Rolling Stone</td>
            <td>Bob Dylan</td>
            <td>(I Can't Get No) Satisfaction</td>
            <td>The Rolling Stones</td>

And executing the following script connects the input with the table:

    inputSelector: "#tablesearchinput"
    // itemSelector (tbody > tr) and textSelector (td) already have proper default values 


The following table contains all possible options which can be passed to the plugin.

Name Type Description
itemSelector string jQuery selector for the data item element (e.g. tr, li).
Default: "tbody > tr"
textSelector string jQuery selector for the element which contains the text within the item element.
If not specified the data item element is used instead.
Default: "td"
inputSelector string jQuery selector for the input element which is used to filter the data.
Default: ""
caseSensitive bool Determines whether the search should be case sensitive or not.
Default: false
toggle function this function is called for each data item element when the text in the input changes.
it is called with the data item element and a boolean value indicating whether the item contains the text or not.
Default: function(item, containsText) { $(item).toggle(containsText); }


Copyright (c) 2014 Lukas Beranek Licensed under the MIT license.