I'm using successfully this code
function refreshDataTable() {
// The table is made sortable
$('#order_proposal_table').DataTable({
'destroy' : true, // see http://datatables.net/manual/tech-notes/3#destroy - 2nd example
'paging' : false,
'scrollCollapse' : true,
'scrollY' : '65vh',
'fixedHeader' : true,
'dom' : 'rt',
});
}
Then I'm trying to enable searching in 2 of the 9 columns.
So I changed
'dom' : 'rt',
into
'dom' : 'frt',
To show the find input box. This works, but it searches trough every columns, but I need to search only into 2 columns.
So I'm trying to follow this official guide to disable filtering selectively, and add columns
definition
Resulting code:
function refreshDataTable() {
// The table is made sortable
$('#order_proposal_table').DataTable({
'destroy' : true, // see http://datatables.net/manual/tech-notes/3#destroy - 2nd example
'paging' : false,
'scrollCollapse' : true,
'scrollY' : '65vh',
'fixedHeader' : true,
'dom' : 'frt',
'columns' : [ // see https://datatables.net/reference/option/columns.searchable
{ 'searchable': false },
{ 'searchable': false },
null, // product code
null, // description
{ 'searchable': false }
]
});
}
The problem is that I've a javscript error from the datatable javascript
TypeError: col is undefined
Removing columns
the code works.
What am I doing wrong?
I resolved using the columnsDef
option.
The following code disabled search for the specified columns. Exactly what I wanted.
'columnDefs' : [ // see https://datatables.net/reference/option/columns.searchable
{
'searchable' : false,
'targets' : [0,1,4,5,6,7,8,9]
},
]
Have you tried passing null for the remaining 4 columns rather than just specifying the first 5? So:
'columns': [
{ 'searchable': false },
{ 'searchable': false },
null,
null,
{ 'searchable': false },
null,
null,
null,
null
]
I would have posted this as a comment but I couldn't include the example.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With