Skip to content

Commit aef3213

Browse files
committed
Prevent commit if item is disabled
preventDefault if selection exist but is disabled like how button[disabled] would behave
1 parent bd787e0 commit aef3213

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

combobox-nav.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,15 @@ function commitWithElement(event: MouseEvent) {
6363
if (!(event.target instanceof Element)) return
6464
const target = event.target.closest('[role="option"]')
6565
if (!target) return
66-
fireCommitEvent(target)
6766
event.preventDefault()
67+
if (target.getAttribute('aria-disabled') === 'true') return
68+
fireCommitEvent(target)
6869
}
6970

7071
function commit(input: HTMLTextAreaElement | HTMLInputElement, list: HTMLElement): boolean {
7172
const target = list.querySelector('[aria-selected="true"]')
72-
if (!target || target.getAttribute('aria-disabled') === 'true') return false
73+
if (!target) return false
74+
if (target.getAttribute('aria-disabled') === 'true') return true
7375
fireCommitEvent(target)
7476
return true
7577
}

0 commit comments

Comments
 (0)