/*========================================================================================= File Name: datatables-responsive.js Description: Responsive Datatable ---------------------------------------------------------------------------------------- Item Name: Modern Admin - Clean Bootstrap 4 Dashboard HTML Template Version: 1.0 Author: PIXINVENT Author URL: http://www.themeforest.net/user/pixinvent ==========================================================================================*/ $(document).ready(function() { /*********************************** * Configuration option * ***********************************/ $('.dataex-res-configuration').DataTable({ responsive: true }); /******************************** * `new` constructor * ********************************/ var tableConstructor = $('.dataex-res-constructor').DataTable(); new $.fn.dataTable.Responsive(tableConstructor); /********************************************** * Immediately show hidden details * **********************************************/ $('.dataex-res-immediately').DataTable({ responsive: { details: { display: $.fn.dataTable.Responsive.display.childRowImmediate, type: '' } } }); /************************************ * Modal details display * ************************************/ $('.dataex-res-modal').DataTable({ responsive: { details: { display: $.fn.dataTable.Responsive.display.modal({ header: function(row) { var data = row.data(); return 'Details for ' + data[0] + ' ' + data[1]; } }), renderer: function(api, rowIdx, columns) { var data = $.map(columns, function(col, i) { return '' + '' + col.title + ':' + ' ' + '' + col.data + '' + ''; }).join(''); return $('').append(data); } } } }); /*********************************************** * With Buttons - Column visibility * ***********************************************/ $('.dataex-res-visibility').DataTable({ dom: 'Bfrtip', buttons: [ 'colvis' ] }); /******************************* * With FixedHeader * *******************************/ var tableFixedHeader = $('.dataex-res-fixedheader').DataTable({ responsive: true }); new $.fn.dataTable.FixedHeader(tableFixedHeader, { header: true, headerOffset: $('.header-navbar').outerHeight() }); /****************************** * With ColReorder * ******************************/ $('.dataex-res-colreorder').DataTable({ responsive: true, colReorder: true }); /******************************************* * Column controlled child rows * *******************************************/ $('.dataex-res-controlled').DataTable({ responsive: { details: { type: 'column' } }, columnDefs: [{ className: 'control', orderable: false, targets: 0 }], order: [1, 'asc'] }); /************************************* * Column control - right * *************************************/ $('.dataex-res-controlright').DataTable({ responsive: { details: { type: 'column', target: -1 } }, columnDefs: [{ className: 'control', orderable: false, targets: -1 }] }); /****************************************** * Whole row child row control * ******************************************/ $('.dataex-res-rowcontrol').DataTable({ responsive: { details: { type: 'column', target: 'tr' } }, columnDefs: [{ className: 'control', orderable: false, targets: 0 }], order: [1, 'asc'] }); /******************************** * Vertical scrolling * ********************************/ var table = $('.dataex-res-scrolling').DataTable({ scrollY: 300, paging: false }); // Resize datatable on menu width change and window resize $(function () { $(".menu-toggle").on('click', resize); // Resize function function resize() { setTimeout(function() { // ReDraw DataTable tableFixedHeader.draw(); }, 400); } }); });