From 6f5bacc72328a28ef2be75fe6f0862232df57831 Mon Sep 17 00:00:00 2001 From: DevSoftTech Server Date: Sat, 6 Jun 2026 06:16:17 +0530 Subject: [PATCH] Fix broken event listeners - properly close click handler and wrap keydown BUGFIX: Uncaught SyntaxError expected expression, got ')' PROBLEM: Event listeners were malformed - click handler and keydown handler were merged into one broken block ROOT CAUSE: The click event listener was missing its closing braces and btnAdd.click() call. Instead, the keydown handler code was pasted directly after it WITHOUT the proper addEventListener wrapper. This caused: 1. Missing closing brackets for click handler 2. Reference to undefined 'e' variable (e.key) outside function scope 3. Browser threw SyntaxError/ReferenceError SOLUTION: 1. Properly closed click event listener: - Added btnAdd.click() call - Added closing braces for function and addEventListener - Added closing }); for forEach loop - Added closing }); for \$.get() AJAX call 2. Created separate keydown event listener: - Wrapped keyboard navigation code in lookup.addEventListener('keydown', function(e) {...}) - Now 'e' variable is properly defined in function scope - Arrow keys, Enter, Escape all have access to event object CODE STRUCTURE NOW: - item.addEventListener('click', ...) - PROPERLY CLOSED - }); // closes forEach - }, 'json'); // closes AJAX - }); // closes input event - lookup.addEventListener('keydown', function(e) {...}) - NEW/PROPER All event handlers are now independent and properly scoped. --- app/Views/billing/ipd/discharge_create.php | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/Views/billing/ipd/discharge_create.php b/app/Views/billing/ipd/discharge_create.php index f74017a..b30d846 100644 --- a/app/Views/billing/ipd/discharge_create.php +++ b/app/Views/billing/ipd/discharge_create.php @@ -1905,6 +1905,14 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller lookup.value = value; dropdown.style.display = 'none'; if (btnAdd) { + btnAdd.click(); + } + }); + }); + }, 'json'); + }); + + lookup.addEventListener('keydown', function(e) { var items = dropdown.querySelectorAll('.dropdown-item'); var isVisible = dropdown.style.display === 'block' && items.length > 0;