Skip to content

Select - Web Component โ€‹

The Select component can be used imported from:

Playground โ€‹

Parameters โ€‹

The Web component uses the <z-select> tag:

By default, all the parameters are optional or can be set in different, except for the ones marked as required

The parametrization of the component can be done with the following custom HTML params:

NameTypeDescriptionSlotA11y
configstring

The main parameter has two components following the pattern: <shape><?:size>.

  • shape: Establishes the styling of the input. Default value is line . Possible values are: shaped or line. ,
  • size: (optional) defines de size of the input. The default value is m, being omitted from the param. The possible values are: m or l.
labelstringLabel of the inputlabel
placeholderstringPlaceholder of the input
readonlybooleanTransforms the input into an output
autocompletestringAutomated assistance in filling out form field values
modelstringValue of the model
disabledbooleanBlocks the interaction with the input component.
requiredbooleanMarks the input component as required.
namestringIdentification for the field inside the form
help-textstringThe forced message to be shown under the inputhelp-text
invalidbooleanThe forced state for set the input as invalid
optionsOption[]List of options to choose fromoption-<opt>
localestring
with-searchbooleanShow search input

Events โ€‹

This component has events. Check the documentation about how to use the events.

NamePayloadDescription
changestringReturns the new value of the "value" attribute
searchstringReturns search value
restartedvoidEmitted on value reset

Slots โ€‹

This component has slots. Check the documentation about how to use the slots.

NameTagsDescription
defaultspan
option-<opt>span
labelspan
help-textspan

Parameters use โ€‹

model โ€‹

Controls the selected value of the input. The value needs to be one of the provided via options:

config โ€‹

The config parameter is used to set the shape of the input between lined and shaped. Being omitted will render the default line shape.

label โ€‹

The label parameter is used to set the text label of the component. Make sure you always use it.

Can also use the label slot:

Select

help-text โ€‹

The help-text parameter is used to provide additional assistance to the user.

name โ€‹

The name parameter is used to set the name of the component. This is useful when the component is part of a form.

options โ€‹

The options attribute is an array of objects that represent the chips. Each object inside the array should have the following properties:

  • text: The text that will be displayed inside the chip.
  • value: The value of the option.
  • disabled: A boolean that indicates if the chip is disabled.

We can use <option> tags to define the values of options

The content con the options can be customized using the slots with the pattern options-<option-value>:

Option AOption BOption COption D

And combining both approaches:

๐Ÿ‡ช๐Ÿ‡ธ Spain๐Ÿ‡ฉ๐Ÿ‡ช Germany๐Ÿ‡ซ๐Ÿ‡ท France๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom

INFO

Notice in this last example that the label takes the value from the <option> inner text and not from the slotted content.

Flags โ€‹

readonly โ€‹

The readonly parameter is used to set the input in a read-only state. It's commonly used to display information.

disabled โ€‹

The disabled parameter is used to block the interaction with the component. Not to be confused with readonly.

required โ€‹

The required parameter is used to set the component as required.

invalid โ€‹

The invalid parameter is used to set the component as invalid.

The with-search parameter is used to apply an internal search feature to filter the available options.

You can change the label of the search using search-placeholder.

The input emits a search event that can be used for external filtering.

Methods โ€‹

reset() โ€‹

We can all the reset() method of the WebComponent in order to reset the value. This will clean the internal states and emit the nullable value with the change event, plus a restarted event:

In this example, the button triggers the method:

Value:ย  undefined

Browser support โ€‹

Detected engine: ย 

  • Chromium

  • Webkit

  • Gecko

HTML Examples โ€‹

CodeSandbox example โ€‹