jquery-searcher

Connects any list-like data with an input for searching.

npm install jquery-searcher
2 downloads in the last week
3 downloads in the last month

jQuery Searcher Plugin

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

Installation

Installation

Zip

Download the latest release of this plugin on GitHub.

bower

bower install jquery-searcher

browserify

npm install --save-dev jquery-searcher

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>

Usage

$("...").searcher({
    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
});

Example

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

Given the following HTML markup:

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

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

$("#tabledata").searcher({
    inputSelector: "#tablesearchinput"
    // itemSelector (tbody > tr) and textSelector (td) already have proper default values
});

Documentation

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); }

License

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

npm loves you