diff --git a/htdocs/resources/views/dokter/pemeriksaan.blade.php b/htdocs/resources/views/dokter/pemeriksaan.blade.php index e02b6668..8e0ea519 100644 --- a/htdocs/resources/views/dokter/pemeriksaan.blade.php +++ b/htdocs/resources/views/dokter/pemeriksaan.blade.php @@ -3434,6 +3434,34 @@ $('#micvalue_id').val(id); $('#modaleditormic').modal('show'); } + function reloadAntibioticTablesKeepScroll() { + var scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || 0; + var scrollTop = window.pageYOffset || document.documentElement.scrollTop || 0; + var tableIds = ['#tblvitek', '#tblkumanmanual1', '#tblkumanmanual2']; + var tableCount = 0; + + function restoreScroll() { + window.requestAnimationFrame(function () { + window.scrollTo(scrollLeft, scrollTop); + }); + } + + tableIds.forEach(function (tableId) { + if ( $.fn.DataTable.isDataTable(tableId) ) { + tableCount++; + $(tableId).DataTable().ajax.reload(function () { + tableCount--; + if (tableCount === 0) { + restoreScroll(); + } + }, false); + } + }); + + if (tableCount === 0) { + restoreScroll(); + } + } function updateValueManOne(id, value) { $.ajax({ url: '{{ route("getResult") }}', @@ -3446,15 +3474,7 @@ _token: '{{ csrf_token() }}' }, success: function(res) { - if ( $.fn.DataTable.isDataTable('#tblvitek') ) { - $("#tblvitek").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual1') ) { - $("#tblkumanmanual1").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual2') ) { - $("#tblkumanmanual2").DataTable().ajax.reload(); - } + reloadAntibioticTablesKeepScroll(); } }); } diff --git a/htdocs/resources/views/dokter/ppds.blade.php b/htdocs/resources/views/dokter/ppds.blade.php index 25496901..a2b6ada3 100644 --- a/htdocs/resources/views/dokter/ppds.blade.php +++ b/htdocs/resources/views/dokter/ppds.blade.php @@ -3512,6 +3512,34 @@ $('#micvalue_id').val(id); $('#modaleditormic').modal('show'); } + function reloadAntibioticTablesKeepScroll() { + var scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || 0; + var scrollTop = window.pageYOffset || document.documentElement.scrollTop || 0; + var tableIds = ['#tblvitek', '#tblkumanmanual1', '#tblkumanmanual2']; + var tableCount = 0; + + function restoreScroll() { + window.requestAnimationFrame(function () { + window.scrollTo(scrollLeft, scrollTop); + }); + } + + tableIds.forEach(function (tableId) { + if ( $.fn.DataTable.isDataTable(tableId) ) { + tableCount++; + $(tableId).DataTable().ajax.reload(function () { + tableCount--; + if (tableCount === 0) { + restoreScroll(); + } + }, false); + } + }); + + if (tableCount === 0) { + restoreScroll(); + } + } function updateValueManOne(id, value) { $.ajax({ url: '{{ route("getResult") }}', @@ -3524,15 +3552,7 @@ _token: '{{ csrf_token() }}' }, success: function(res) { - if ( $.fn.DataTable.isDataTable('#tblvitek') ) { - $("#tblvitek").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual1') ) { - $("#tblkumanmanual1").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual2') ) { - $("#tblkumanmanual2").DataTable().ajax.reload(); - } + reloadAntibioticTablesKeepScroll(); console.log("Value updated", res); } }); diff --git a/htdocs/resources/views/dokter/ppdsdeveloper.blade.php b/htdocs/resources/views/dokter/ppdsdeveloper.blade.php index 850d9d93..1285ef41 100644 --- a/htdocs/resources/views/dokter/ppdsdeveloper.blade.php +++ b/htdocs/resources/views/dokter/ppdsdeveloper.blade.php @@ -3547,6 +3547,34 @@ $('#micvalue_id').val(id); $('#modaleditormic').modal('show'); } + function reloadAntibioticTablesKeepScroll() { + var scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || 0; + var scrollTop = window.pageYOffset || document.documentElement.scrollTop || 0; + var tableIds = ['#tblvitek', '#tblkumanmanual1', '#tblkumanmanual2']; + var tableCount = 0; + + function restoreScroll() { + window.requestAnimationFrame(function () { + window.scrollTo(scrollLeft, scrollTop); + }); + } + + tableIds.forEach(function (tableId) { + if ( $.fn.DataTable.isDataTable(tableId) ) { + tableCount++; + $(tableId).DataTable().ajax.reload(function () { + tableCount--; + if (tableCount === 0) { + restoreScroll(); + } + }, false); + } + }); + + if (tableCount === 0) { + restoreScroll(); + } + } function updateValueManOne(id, value) { $.ajax({ url: '{{ route("getResult") }}', @@ -3559,15 +3587,7 @@ _token: '{{ csrf_token() }}' }, success: function(res) { - if ( $.fn.DataTable.isDataTable('#tblvitek') ) { - $("#tblvitek").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual1') ) { - $("#tblkumanmanual1").DataTable().ajax.reload(); - } - if ( $.fn.DataTable.isDataTable('#tblkumanmanual2') ) { - $("#tblkumanmanual2").DataTable().ajax.reload(); - } + reloadAntibioticTablesKeepScroll(); } }); }