Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get exact match using fnFilter?

I'm using fnFilter in datatables and while trying to filter "inv" everything else starting with "inv" also get filtered. that is "invc", "invk" are also showing in filtered result. How to solve this and get the exact matches only?

code:

$("#user-lock-status-filter select").change(function() {
        oUserTable.fnFilter($(this).val(), 12);
    });
like image 613
Davis Avatar asked Oct 01 '13 11:10

Davis


1 Answers

Change this

oUserTable.fnFilter($(this).val(), 12);

to

oUserTable.fnFilter("^"+$(this).val()+"$", 12, false, false); 
//disabling smart search/regex and apply your own search

Example

Doc

Params for fnFilter

1.{string}: String to filter the table on
2.{int|null}: Column to limit filtering to
3.{bool} [default=false]: Treat as regular expression or not
4.{bool} [default=true]: Perform smart filtering or not
5.{bool} [default=true]: Show the input global filter in it's input box(es)
6.{bool} [default=true]: Do case-insensitive matching (true) or not (false)
like image 109
bhb Avatar answered Oct 03 '22 00:10

bhb