Vue.js Accessible Multiselect Component Library

vue-access-multiselect is a Vue.js accessible multi-select component built according to WAI-ARIA practices.

vue js multi select component codesandbox, multi select dropdown accessibility, multi select component react, custom multi select dropdown, multi select with search, multi select list


  • ♿️ Full access to screen readers;
  • ⌨️ Supports keyboard navigation (there are already a lot of keyboard shortcuts);
  • 🔣 Writing forward to focus on the option that begins with the symbols written;
  • 💅 is style neutral, so you can design it however you like (but including core.scss is highly encouraged).

Powered by

  • Rollup (and plugins)
  • Babel
  • SASS and node-sass
  • PostCSS
  • Autoprefixer
  • Jest
  • Vue Test Utils
  • keycode-js
  • lodash

Universal Select/Multiselect/Tagging Component for Vue.js

How to make use of it:

Install and download:

# Yarn
$ yarn add vue-accessible-multiselect

$ npm install vue-accessible-multiselect --save

1. Import Vue and the vue-access-multiselect component.

import Vue from 'vue'
import VueAccessibleMultiselect from 'vue-accessible-multiselect'

2. Import CSS styles.

// Core
@import 'vue-accessible-multiselect/src/styles/core.scss';
// Optional Theme
@import 'vue-accessible-multiselect/src/styles/themes/default.scss';

3. Register the component.

// as a plugin
// as a component
Vue.component('VueAccessibleMultiselect', VueAccessibleMultiselect)
// or 
export default {
  name: 'YourAwesomeComponent',
  components: {

4. Add the vue-access-multiselect component to the template and specify the options as follows:

export default {
  // ...
  data() {
    return {
      value: [],
      options: [
          value: 0,
          label: 'JavaScript',
          value: { foo: 'bar' },
          label: 'HTML',
          value: [1, 2, 3],
          label: 'CSS',
          value: false,
          label: 'React',
          value: true,
          label: 'Angular',
          value: 'vue',
          label: 'Vue.js',

5. Default props.

options: {
  type: Array,
  required: true,
  validator: optionsValidator,
value: {
  required: true,
  validator: valueValidator,
transition: {
  type: Object,
  default: () => config.transition || null,
  validator: transitionValidator,
label: String,
placeholder: String,
disabled: Boolean,

⌨️ Keyboard navigation

  • Down Arrow Moves focus to the next option
  • Up Arrow Moves focus to the previous option
  • Home Moves focus to the first option
  • End Moves focus to the last option
  • Space Changes the selection state of the focused option
  • Shift + Down Arrow Moves focus to and toggle the selected state of the next option
  • Shift + Up Arrow Moves focus to and toggle the selected state of the previous option
  • Shift + Space Selects contiguous items from the most recently selected item to the focused item
  • Control + Shift + Home Selects the focused option and all options up to the first option. Moves focus on the first option.
  • Control + Shift + End Selects the focused option and all options down to the last option. Moves focus to the last option
  • Control + A Selects all options in the list. If all options are selected, unselect all options

Accessible Multiple Select Component, vue-accessible-multiselect Plugin/Github, vuejs multi select ui

See Demo And Download

Official Website(vue-a11y): Click Here

This superior jQuery/javascript plugin is developed by vue-a11y. For extra advanced usage, please go to the official website.

Related Posts


Adding Zoom-on-Wheel and Pan-on-Drag to Inline SVG Elements

Vanilla-js module for adding zoom and panning behavior when dragging to SVG embedded elements. A lightweight Vanilla JavaScript plugin that enables zoom and pan functions on an…


Sorting HTML Table Vanilla JavaScript Library | Sortable.js

Sortable – Small JS vanilla table sorter makes any table with class = “sortable“, er, sortable. That is, the user can click the table header and change…


WYSIWYG Rich Text Editor With jQuery And FontAwesome | RichText

RichText jQuery implementation for WYSIWYG Rich Text Editor which uses Font Awesome Iconic Font for editor icons. It is licensed under AGPL-3.0. Initialize editor Simply call .richText() on your jQuery(‘textarea’) or jQuery(‘input’)…


[Autocomplete] Email Domain Suggestions Like Gmail, Outlook, or More | email-genie

Email Genie allows auto-completion in the email field by providing a list of domain suggestions (,, etc.). This package is lightweight, flexible, compatible with libraries (jQuery,…


[Generator] JavaScript Library for Creating Squircley Magic ✨ | squircley.js

squircley.js is the core magic of Squirclular ✨ from wrapped in a simple 0-dependency JavaScript library. squircley.js can generate SVG files, add square backgrounds to DOM…