mirror of
https://github.com/twbs/bootstrap.git
synced 2025-11-08 00:25:12 -05:00
Merge 4acba32f7e9b2416e6cb882bd14780ec199ff5e2 into 12b3f76cc497ea59c471b9eeb89f9bbb58991dba
This commit is contained in:
commit
e1065b3340
@ -17,3 +17,22 @@
|
|||||||
}, false)
|
}, false)
|
||||||
})
|
})
|
||||||
})()
|
})()
|
||||||
|
|
||||||
|
// Workaround for Bootstrap dropdown toggling on Enter in form inputs
|
||||||
|
// See: https://github.com/twbs/bootstrap/issues/41354
|
||||||
|
|
||||||
|
document.addEventListener('keydown', function(event) {
|
||||||
|
if (event.key === 'Enter') {
|
||||||
|
if (
|
||||||
|
event.target.tagName === 'INPUT' &&
|
||||||
|
event.target.form
|
||||||
|
) {
|
||||||
|
// Find all dropdown toggles after the input in the same form
|
||||||
|
let dropdowns = Array.from(event.target.form.querySelectorAll('[data-bs-toggle="dropdown"]'));
|
||||||
|
let inputIndex = Array.from(event.target.form.elements).indexOf(event.target);
|
||||||
|
if (dropdowns.some(btn => Array.from(event.target.form.elements).indexOf(btn) > inputIndex)) {
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, true);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user