diff --git a/web/static/js/audit.js b/web/static/js/audit.js index 44e323f8..a252df1e 100644 --- a/web/static/js/audit.js +++ b/web/static/js/audit.js @@ -771,9 +771,16 @@ document.addEventListener('languagechange', function () { var auditCustomSelectMap = {}; var auditFilterSelectsDocListener = false; +function closeAuditCustomSelect(selectId) { + var reg = auditCustomSelectMap[selectId]; + if (reg && reg.wrapper) { + reg.wrapper.classList.remove('open'); + } +} + function closeAllAuditCustomSelects() { Object.keys(auditCustomSelectMap).forEach(function (id) { - auditCustomSelectMap[id].wrapper.classList.remove('open'); + closeAuditCustomSelect(id); }); } @@ -872,13 +879,15 @@ function enhanceAuditFilterSelect(selectId) { dropdown.addEventListener('click', function (e) { var opt = e.target.closest('.audit-custom-select-option'); if (!opt) return; + e.stopPropagation(); var val = opt.getAttribute('data-value'); if (val === null) val = ''; + closeAuditCustomSelect(selectId); if (select.value !== val) { select.value = val; select.dispatchEvent(new Event('change', { bubbles: true })); } - wrapper.classList.remove('open'); + closeAuditCustomSelect(selectId); syncAuditCustomSelect(selectId); }); diff --git a/web/templates/index.html b/web/templates/index.html index 08eabe0d..996f188e 100644 --- a/web/templates/index.html +++ b/web/templates/index.html @@ -3816,7 +3816,7 @@