Select

Select fields components are used for collecting user provided information from a list of options.

API

v-select
Name
append-icon
Default
'$vuetify.icons.dropdown'
Type
string

Appends an icon to the component, uses the same syntax as v-icon

Name
append-outer-icon New in — v1.1
Default
undefined
Type
string

Appends an icon to the outside the component's input, uses same syntax as v-icon

Name
attach
Default
false
Type
any

Specifies which DOM element that this component should detach to. Use either a CSS selector string or an object reference to the element.

Name
autofocus
Default
false
Type
boolean

Enables autofocus

Name
background-color
Default
undefined
Type
string

Changes the background-color of the input

Name
box
Default
false
Type
boolean

Applies the alternate box input style

Name
browser-autocomplete
Default
'on'
Type
string

Configures the default <input> autocomplete attribute

Name
cache-items
Default
false
Type
boolean

Keeps a local unique copy of all items that have been passed through the items prop.

Name
chips
Default
false
Type
boolean

Changes display of selections to chips

Name
clear-icon
Default
'$vuetify.icons.clear'
Type
string

Applied when using clearable and the input is dirty

Name
clearable
Default
false
Type
boolean

Add input clear functionality, default icon is Material Icons clear

Name
color
Default
'primary'
Type
string

Applies specified color to the control - it can be the name of material color (for example success or purple) or css color (#033 or rgba(255, 0, 0, 0.5))

Name
counter
Default
undefined
Type
boolean | number | string

Creates counter for input length; if no number is specified, it defaults to 25. Does not apply any validation.

Name
dark
Default
false
Type
boolean

Applies the dark theme variant

Name
deletable-chips
Default
false
Type
boolean

Adds a remove icon to selected chips

Name
dense
Default
false
Type
boolean

Lowers max height of list items

Name
disabled
Default
false
Type
boolean

Disables the input

Name
dont-fill-mask-blanks
Default
false
Type
boolean

Disables the automatic character display when typing

Name
error
Default
false
Type
boolean

Puts the input in a manual error state

Name
error-count
Default
1
Type
number | string

The total number of errors that should display at once

Name
error-messages
Default
[]
Type
string | array

Puts the input in an error state and passes through custom error messages. Will be combined with any validations that occur from the rules prop. This field will not trigger validation

Name
flat
Default
false
Type
boolean

Removes elevation (shadow) added to element when using the solo or solo-inverted props

Name
full-width
Default
false
Type
boolean

Designates input type as full-width

Name
height
Default
undefined
Type
number | string

Sets the component height

Name
hide-details
Default
false
Type
boolean

Hides hint, validation errors

Name
hide-selected
Default
false
Type
boolean

Do not display in the select menu items that are already selected

Name
hint
Default
undefined
Type
string

Hint text

Name
item-avatar
Default
avatar
Type
string | array | function

Set property of items's avatar value

Name
item-disabled
Default
disabled
Type
string | array | function

Set property of items's disabled value

Name
item-text
Default
text
Type
string | array | function

Set property of items's text value

Name
item-value
Default
value
Type
string | array | function

Set property of items's value - must be primative. Dot notation is supported

Name
items
Default
[]
Type
array

Can be an array of objects or array of strings. When using objects, will look for a text and value field. This can be changed using the item-text and item-value props.

Name
label
Default
undefined
Type
string

Sets input label

Name
light
Default
false
Type
boolean

Applies the light theme variant

Name
loading
Default
false
Type
boolean | string

Displays linear progress bar. Can either be a String which specifies which color is applied to the progress bar (any material color or theme color - primary, secondary, success, info, warning, error) or a Boolean which uses the component color (set by color prop - if it's supported by the component) or the primary color

Name
mask
Default
undefined
Type
object | string

Apply a custom character mask to the input. See mask table below for more information

Name
menu-props New in — v1.2
Default
{"closeOnClick":false, "closeOnContentClick":false, "openOnClick":false, "maxHeight":300}
Type
string | array | object

Pass props through to the v-menu component. Accepts either a string for boolean props menu-props="auto, overflowY", or an object :menu-props="{ auto: true, overflowY: true }"

Name
messages
Default
[]
Type
string | array

Displays a list of messages or message if using a string

Name
multiple
Default
false
Type
boolean

Changes select to multiple. Accepts array for value

Name
no-data-text
Default
'$vuetify.noDataText'
Type
string

Display text when there is no data

Name
open-on-clear
Default
false
Type
boolean

When using the clearable prop, once cleared, the select menu will either open or stay open, depending on the current state

Name
outline
Default
false
Type
boolean

Applies the outline style to the input

Name
persistent-hint
Default
false
Type
boolean

Forces hint to always be visible

Name
placeholder
Default
undefined
Type
string

Sets the input’s placeholder text

Name
prefix
Default
undefined
Type
string

Displays prefix text

Name
prepend-icon
Default
undefined
Type
string

Prepends an icon to the component, uses the same syntax as v-icon

Name
prepend-inner-icon New in — v1.1
Default
undefined
Type
string

Prepends an icon inside the component's input, uses the same syntax as v-icon

Name
readonly
Default
false
Type
boolean

Puts input in readonly state

Name
return-masked-value
Default
false
Type
boolean

Returns the unmodified masked string

Name
return-object
Default
false
Type
boolean

Changes the selection behavior to return the object directly rather than the value specified with item-value

Name
reverse New in — v1.1
Default
false
Type
boolean

Reverses the input orientation

Name
rules
Default
[]
Type
array

Accepts an array of functions that return either True or a String with an error message

Name
single-line
Default
false
Type
boolean

Label does not move on focus/dirty

Name
small-chips New in — v1.1
Default
false
Type
boolean

Changes display of selections to chips with the small property

Name
solo
Default
false
Type
boolean

Changes the style of the input

Name
solo-inverted
Default
false
Type
boolean

Reduces element opacity until focused

Name
success New in — v1.1
Default
false
Type
boolean

Puts the input in a manual success state

Name
success-messages New in — v1.1
Default
[]
Type
string | array

Puts the input in a success state and passes through custom success messages.

Name
suffix
Default
undefined
Type
string

Displays suffix text

Name
type
Default
'text'
Type
string

Sets input type

Name
validate-on-blur
Default
false
Type
boolean

Delays validation until blur event

Name
value
Default
undefined
Type
any

Input value

Name
value-comparator
Default
(a: any, b: any) => boolean
Type
function

The comparison algorithm used for values. More info

Supplemental

Mask legend
MaskDescription
Masks
#Any digit
AAny capital letter
aAny small letter
NAny capital alphanumeric character
nAny small alphanumeric character
XAny special symbol (-!$%^&*()_+|~=`{}[]:";'<>?,./\) or space
Pre-made
credit-card#### - #### - #### - ####
date-with-time##/##/#### ##:##
phone(###) ### - ####
social###-##-####
time##:##
time-with-seconds##:##:##

Examples

Light theme

A standard single select has a multitude of configuration options.

Icons

Use a custom prepended or appended icon.

Multiple

A multi-select can utilize v-chip as the display for selected items.

Customized item text and value

You can specify the specific properties within your items array correspond to the text and value fields. By default, this is text and value. In this example we also use the return-object prop which will return the entire object of the selected item on selection.

Prepend/Append item slots

The v-select components can be optionally expanded with prepended and appended items. This is perfect for customized select-all functionality.

Change selection appearance

The selection scoped slot can be used to customize the way selected values are shown in the input. This is great when you want something like foo (+20 others) or don't want the selection to occupy multiple lines.

Edit this page | language on Github
Vuetify 3 is now available!The latest version of Vuetify is now available!
Learn about Vuetify 3's new features and functionality for modern Vue applications
Start exploringExplore