@@ -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);
}