From cb94c91a86d9ed89d2eed96e504f5906911e45bb Mon Sep 17 00:00:00 2001 From: loviuz Date: Sat, 20 May 2023 01:19:26 +0200 Subject: [PATCH] Inizializzazione datatables nei plugin solo quando vengono aperti --- assets/src/js/base/custom.js | 8 +++++++- assets/src/js/functions/datatables.js | 6 +++--- include/manager.php | 2 +- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/assets/src/js/base/custom.js b/assets/src/js/base/custom.js index 85abe2095..ee6d86c06 100644 --- a/assets/src/js/base/custom.js +++ b/assets/src/js/base/custom.js @@ -74,7 +74,13 @@ $(document).ready(function () { numeral.defaultFormat('0,0.' + ('0').repeat(globals.cifre_decimali)); // Richiamo alla generazione di Datatables - start_datatables(); + start_datatables( $('.main-records') ); + + // Avvio datatables dei plugin solo al primo click + $('.nav-tabs li').not('.clicked').on('click', function(){ + $(this).addClass('clicked'); + start_datatables( $(".tab-pane.active .main-records-plugins") ); + }); // Calendario principale start_complete_calendar("#daterange", function (start, end) { diff --git a/assets/src/js/functions/datatables.js b/assets/src/js/functions/datatables.js index 4235e7770..43f7e48b1 100755 --- a/assets/src/js/functions/datatables.js +++ b/assets/src/js/functions/datatables.js @@ -34,10 +34,10 @@ function start_local_datatables() { } // Datatable -function start_datatables() { +function start_datatables( $elements ) { start_local_datatables(); - $('.main-records').each(function () { + $elements.each(function () { const $this = $(this); // Controlla che la tabella non sia giĆ  inizializzata @@ -451,7 +451,7 @@ function getTable(selector) { if (table.hasClass('datatables')) { start_local_datatables(); } else { - start_datatables(); + start_datatables( $('.main-records') ); } }, datatable: table.DataTable(), diff --git a/include/manager.php b/include/manager.php index 86170717e..32aef2df6 100755 --- a/include/manager.php +++ b/include/manager.php @@ -99,7 +99,7 @@ if (!empty($type) && $type != 'menu' && $type != 'custom') { $table_id = 'main_'.rand(0, 99); echo ' - +
';