Data-tables not bringing back exact results.

  function getContacts(listId, cOnly) {

            if (typeof contactTable !== 'undefined')
            contactTable = $('#contactstable').DataTable({
                "serverSide": true,
                "stateSave": true,
                "ordering": false,
                "searching": true,
                "oSearch": {"bSmart": false},
                "searchDelay": 1500,
                "ajax": {
                    "url": "get-contacts.php",
                    "type": "POST",
                    "data": {
                        listId: listId,
                        co: cOnly
                "rowCallback": function (row, data) {
                "initComplete": function (data) {
                "columns": [
                    {"data": "contact"},
                    {"data": "email"},
                    {"data": "company"},
                    {"data": "date"},
                    {"data": "actions"}
                'columnDefs'        : [      
                    'searchable'    : false, 
                    'targets'       : [2,3,4] 
                "order": [[0, 'desc']]


Open in new window

so this function creates my dataTable,

all works table it up, i only perform search functions on contact and email,

how ever it is failing to give me exact results , for example first record is  Tim Smith , i can clearly see Tim Smith, i type Tim Smith into the search input provided by data-tables, and he isnt shown in the result ?
Alex LordAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Chris StanyonWebDevCommented:
Pretty sure the actual search (filtering) will be done at your server-side script because you've set the datasource to AJAX, so to understand why it's not working, we'd need to see the get-contacts.php file

Check if you have any html tag around the name.
The search and filter option supposed to work the same even if you use their server-side method, because it looking once the table is rendered...

Which Datatables version are you using?
Chris StanyonWebDevCommented:
Actually, just checked - its not because you're using an AJAX datasource - it's because you've set the serverSide property to true. This tells DataTables that you'll handle it yourself at the server end. Remove that (or set it to false) and you'll see that it works. If you want more advance searching, then re-enable the server-side property and handle the search server-side (build your own query)

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
See here that is possible to search or filter data that are rendered using server-side

As long as the data you are looking for is in the datatables table
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.