diff --git a/public/dashboard/dashboard.html b/public/dashboard/dashboard.html index 2ab846f..1a328ca 100644 --- a/public/dashboard/dashboard.html +++ b/public/dashboard/dashboard.html @@ -77,7 +77,7 @@
- +
diff --git a/public/dashboard/event.html b/public/dashboard/event.html index 3583bd5..5d5c44b 100644 --- a/public/dashboard/event.html +++ b/public/dashboard/event.html @@ -146,7 +146,7 @@
- +
@@ -852,11 +852,31 @@ // Lakukan ini SEBELUM setupFilters() untuk memastikan value ter-set dengan benar const dateInput = document.getElementById('filter-date'); if (dateInput) { - // Force set value dan attribute untuk override browser cache + // AGGRESIF: Remove value dulu, lalu set lagi untuk force override browser cache + dateInput.removeAttribute('value'); + dateInput.value = ''; + + // Set value multiple times dengan berbagai cara untuk memastikan dateInput.value = today; dateInput.setAttribute('value', today); - // Juga set property langsung untuk memastikan dateInput.defaultValue = today; + + // Force update dengan requestAnimationFrame untuk memastikan DOM sudah ready + requestAnimationFrame(() => { + dateInput.value = today; + dateInput.setAttribute('value', today); + console.log('[Events] Date input force set (RAF):', today, 'actual value:', dateInput.value); + }); + + // Set lagi setelah semua async operations selesai + setTimeout(() => { + if (dateInput.value !== today) { + dateInput.value = today; + dateInput.setAttribute('value', today); + console.log('[Events] Date input force set (timeout):', today, 'actual value:', dateInput.value); + } + }, 100); + console.log('[Events] Date input set to:', today, 'actual value:', dateInput.value); } diff --git a/public/dashboard/js/dashboard.js b/public/dashboard/js/dashboard.js index 165ffa0..b35b1d5 100644 --- a/public/dashboard/js/dashboard.js +++ b/public/dashboard/js/dashboard.js @@ -775,11 +775,31 @@ document.addEventListener('DOMContentLoaded', async () => { // Lakukan ini SEBELUM setupFilters() untuk memastikan value ter-set dengan benar const dateInput = document.getElementById('filter-date'); if (dateInput) { - // Force set value dan attribute untuk override browser cache + // AGGRESIF: Remove value dulu, lalu set lagi untuk force override browser cache + dateInput.removeAttribute('value'); + dateInput.value = ''; + + // Set value multiple times dengan berbagai cara untuk memastikan dateInput.value = today; dateInput.setAttribute('value', today); - // Juga set property langsung untuk memastikan dateInput.defaultValue = today; + + // Force update dengan requestAnimationFrame untuk memastikan DOM sudah ready + requestAnimationFrame(() => { + dateInput.value = today; + dateInput.setAttribute('value', today); + console.log('[Dashboard] Date input force set (RAF):', today, 'actual value:', dateInput.value); + }); + + // Set lagi setelah semua async operations selesai + setTimeout(() => { + if (dateInput.value !== today) { + dateInput.value = today; + dateInput.setAttribute('value', today); + console.log('[Dashboard] Date input force set (timeout):', today, 'actual value:', dateInput.value); + } + }, 100); + console.log('[Dashboard] Date input set to:', today, 'actual value:', dateInput.value); }