123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- /*=========================================================================================
- File Name: datatables-basic.js
- Description: Basic Datatable
- ----------------------------------------------------------------------------------------
- Item name: Vuexy - Vuejs, HTML & Laravel Admin Dashboard Template
- Author: PIXINVENT
- Author URL: http://www.themeforest.net/user/pixinvent
- ==========================================================================================*/
- $(document).ready(function() {
- /****************************************
- * js of zero configuration *
- ****************************************/
- $('.zero-configuration').DataTable();
- /********************************************
- * js of Order by the grouping *
- ********************************************/
- var groupingTable = $('.row-grouping').DataTable({
- "columnDefs": [{
- "visible": false,
- "targets": 2
- }],
- "order": [
- [2, 'asc']
- ],
- "displayLength": 10,
- "drawCallback": function(settings) {
- var api = this.api();
- var rows = api.rows({
- page: 'current'
- }).nodes();
- var last = null;
- api.column(2, {
- page: 'current'
- }).data().each(function(group, i) {
- if (last !== group) {
- $(rows).eq(i).before(
- '<tr class="group"><td colspan="5">' + group + '</td></tr>'
- );
- last = group;
- }
- });
- }
- });
- $('.row-grouping tbody').on('click', 'tr.group', function() {
- var currentOrder = groupingTable.order()[0];
- if (currentOrder[0] === 2 && currentOrder[1] === 'asc') {
- groupingTable.order([2, 'desc']).draw();
- }
- else {
- groupingTable.order([2, 'asc']).draw();
- }
- });
- /*************************************
- * js of complex headers *
- *************************************/
- $('.complex-headers').DataTable();
- /*****************************
- * js of Add Row *
- ******************************/
- var t = $('.add-rows').DataTable();
- var counter = 2;
- $('#addRow').on( 'click', function () {
- t.row.add( [
- counter +'.1',
- counter +'.2',
- counter +'.3',
- counter +'.4',
- counter +'.5'
- ] ).draw( false );
- counter++;
- });
- /**************************************************************
- * js of Tab for COLUMN SELECTORS WITH EXPORT AND PRINT OPTIONS *
- ***************************************************************/
- $('.dataex-html5-selectors').DataTable( {
- dom: 'Bfrtip',
- buttons: [
- {
- extend: 'copyHtml5',
- exportOptions: {
- columns: [ 0, ':visible' ]
- }
- },
- {
- extend: 'pdfHtml5',
- exportOptions: {
- columns: ':visible'
- }
- },
- {
- text: 'JSON',
- action: function ( e, dt, button, config ) {
- var data = dt.buttons.exportData();
- $.fn.dataTable.fileSave(
- new Blob( [ JSON.stringify( data ) ] ),
- 'Export.json'
- );
- }
- },
- {
- extend: 'print',
- exportOptions: {
- columns: ':visible'
- }
- }
- ]
- });
- /**************************************************
- * js of scroll horizontal & vertical *
- **************************************************/
- $('.scroll-horizontal-vertical').DataTable( {
- "scrollY": 200,
- "scrollX": true
- });
- });
|