I'm new in Datatables and I have a table that displays just the first 10 rows by default. I'm trying to add this class to all rows, not just for the default 10 ...
var table = $("#datatable-buttons").DataTable({...})
table.rows.removeClass('selected')
and
$('tbody tr').removeClass('selected')
and
$(tables.table().body()).removeClass('selected')
but without any success :(
Is it possible to add/remove the select
class to all rows just by clicking a button?
I believe the best way to add a certain class to all rows is upon initialization :
var table = $('#example').DataTable({
createdRow: function ( row, data, index ) {
$(row).addClass('selected')
}
})
You can add/remove a class to a row upon click by using
table.on('click', 'tbody tr', function() {
var $row = table.row(this).nodes().to$();
var hasClass = $row.hasClass('selected');
if (hasClass) {
$row.removeClass('selected')
} else {
$row.addClass('selected')
}
})
You can also by code remove (or add) a class to all rows by
table.rows().every(function() {
this.nodes().to$().removeClass('selected')
})
All examples in action here -> http://jsfiddle.net/c67q2b4x/
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