Browse Source

blank autocomplete selects null option

pull/1678/head
Phil Lee 3 years ago
parent
commit
7499f1471c
  1. 8
      app/frontend/controllers/accessible_autocomplete_controller.js

8
app/frontend/controllers/accessible_autocomplete_controller.js

@ -7,6 +7,7 @@ export default class extends Controller {
connect () { connect () {
const selectEl = this.element const selectEl = this.element
const selectOptions = Array.from(selectEl.options).filter(function (option, index, arr) { return option.value !== '' }) const selectOptions = Array.from(selectEl.options).filter(function (option, index, arr) { return option.value !== '' })
const nullOption = Array.from(selectEl.options).find(function (option, index, arr) { return option.value === '' })
const options = selectOptions.map((o) => enhanceOption(o)) const options = selectOptions.map((o) => enhanceOption(o))
const matches = /^(\w+)\[(\w+)\]$/.exec(selectEl.name) const matches = /^(\w+)\[(\w+)\]$/.exec(selectEl.name)
@ -29,7 +30,12 @@ export default class extends Controller {
selectOptions, selectOptions,
(option) => (option.textContent || option.innerText) === val (option) => (option.textContent || option.innerText) === val
)[0] )[0]
if (selectedOption) selectedOption.selected = true
if (selectedOption) {
selectedOption.selected = true
} else {
nullOption.selected = true
}
} }
}) })
} }

Loading…
Cancel
Save