You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@vueform/multiselect adds the following aria- attributes aria-placeholder="Search for Groups", aria-multiselectable="true". But those are not valid now. If we remove those attributes the issue will be resolved.
I've gone through the actual component code as well and found where the issue is
The following is the place when the searchable attribute is enabled set as true
[aria-*] attributes do not match their roles
Each ARIA role supports a specific subset of aria-* attributes. Mismatching these invalidates the aria-* attributes. Learn how to match ARIA attributes to their roles.
We've resolved this issue by passing aria prop with value set to null eg: :aria="{ 'aria-placeholder': null, 'aria-multiselectable': null }". This works only for the aria attributes which we want to remove. However as per the standard accessibility guidelines the aria-multiselectable should be added to the element which has the role grid, listbox, tablist, or tree. Reference: aria-multiselectable
Hi,
I'm getting the following accessibility issue Elements must only use supported ARIA attributes
Following is the issue, when add searchable attribute to true getting this issue:
@vueform/multiselect adds the following aria- attributes aria-placeholder="Search for Groups", aria-multiselectable="true". But those are not valid now. If we remove those attributes the issue will be resolved.
I've gone through the actual component code as well and found where the issue is
The following is the place when the searchable attribute is enabled set as true
<!-- Search --> <template v-if="mode !== 'tags' && searchable && !disabled"> <input :type="inputType" :modelValue="search" :value="search" :class="classList.search" :autocomplete="autocomplete" :id="searchable ? id : undefined" @input="handleSearchInput" @keypress="handleKeypress" @paste.stop="handlePaste" ref="input" :aria-controls="ariaControls" :aria-placeholder="ariaPlaceholder" :aria-expanded="isOpen" :aria-activedescendant="ariaActiveDescendant" :aria-multiselectable="ariaMultiselectable" role="combobox" v-bind="{ ...attrs, ...arias, }" /> </template>
And the following code for Tags with search option enabled
<!-- Actual search input --> <input v-if="searchable && !disabled" :type="inputType" :modelValue="search" :value="search" :class="classList.tagsSearch" :id="searchable ? id : undefined" :autocomplete="autocomplete" @input="handleSearchInput" @keypress="handleKeypress" @paste.stop="handlePaste" ref="input" :aria-controls="ariaControls" :aria-placeholder="ariaPlaceholder" :aria-expanded="isOpen" :aria-activedescendant="ariaActiveDescendant" :aria-multiselectable="ariaMultiselectable" role="combobox" v-bind="{ ...attrs, ...arias, }" />
If we remove :aria-placeholder="ariaPlaceholder" and :aria-multiselectable="ariaMultiselectable" the issue will be resolved.
The text was updated successfully, but these errors were encountered: