columnDefs.targets
Assign a column definition to one or more columns.
Description
The columnDefs
option allows a column definition object to be defined and then assigned to one or more columns in a DataTable, regardless of the order of the column definitions array, or the order of the columns in the table.
This columnDefs.targets
option provides the information required by DataTables for which columns in the table the column definition object should be applied.
It can be:
- 0 or a positive integer - column index counting from the left
- A negative integer - column index counting from the right
- A string - class name will be matched on the TH for the column (without a leading
.
) - The string "_all" - all columns (i.e. assign a default)
Additionally, targets
can be either a single option from the list above, or an array of options (the different types can be mixed in the array if required). For example targets: [ -1, -2 ]
would target the last and second last columns in the table.
Please note that unlike all other column configuration options which can be applied to be columns
and columnDefs
, the columnDefs.targets
option can only be used in columnDefs
.
Type
This option can be given in the following type(s):
Examples
Disable filtering on the first column:
$('#example').dataTable( {
"columnDefs": [ {
"targets": 0,
"searchable": false
} ]
} );
Disable sorting on the first and third columns:
$('#example').dataTable( {
"columnDefs": [ {
"targets": [ 0, 2 ],
"orderable": false
} ]
} );
Disable ordering on columns which have a class of 'nosort':
$('#example').dataTable( {
"columnDefs": [ {
"targets": 'nosort',
"orderable": false
} ]
} );
Related
The following options are directly related and may also be useful in your application development.