Overview
For detailed design guidance, refer to the page on text fields .Usage
Input with label
<KTextbox label="Input with label" />
This text box includes a visible label, providing clear guidance and context to the user about the expected input.
Valid and invalid input
<KTextbox
v-model="numericInput"
label="Numbers only"
:invalid="!isNumeric(numericInput)"
invalidText="Please enter a valid number."
/>
This text box only accepts numeric input. If any non-numeric character is entered, it will be considered invalid.
Disabled input
<KTextbox label="Disabled input" disabled />
This text box is disabled. It cannot be edited or focused, so it will be skipped during keyboard navigation.
Number input
<KTextbox label="Number Input" type="number" :min="0" :max="100" />
This is a numeric input field where users can input values within the range of 0 to 100.
Note: The KTextbox does not automatically validate the min and max values, however, it is recommended to use them for accessibility purposes while using the invalid and invalidText props to handle validation as needed.
Text area
<KTextbox label="Text area" :textArea="true" />
This is a multi-line text input area, suitable for longer text entries.
Props
Name | Description | Type | Default | Required |
---|---|---|---|---|
label | Label for the text field | string | — | true |
clearAriaLabel | Value of the aria-label for clear button | string |
'Clear'
| — |
value | Value of the text field | string|number |
null
| — |
invalid | Whether or not the current value is invalid | boolean |
false
| — |
invalidText | Text conditionally displayed based on values of invalid and showInvalidText | string |
null
| — |
showInvalidText | Show the invalidText even if the user has not focused or change the input.
invalid must also be true for this to take effect. | boolean |
false
| — |
disabled | Whether or not the field is disabled | boolean |
false
| — |
autofocus | Whether or not to autofocus | boolean |
false
| — |
maxlength | Maximum number of characters for value | number |
null
| — |
autocomplete | HTML5 autocomplete attribute ( off , on , name , username , current-password , etc) | string |
null
| — |
autocapitalize | HTML5 autocapitalize attribute. Used for touch-input enabled UI ( off , on , words , etc) | string |
null
| — |
type | HTML5 type of input ( text , password , number , etc.) | string |
'text'
| — |
min | Minimum value (when value type is number ) | number |
null
| — |
max | Maximum value (when value type is number ) | number |
null
| — |
textArea | Whether to display as a multi-line text area | boolean |
false
| — |
clearable | When set to true , the component displays a clear button inside the input field. | boolean |
false
| — |
Events
Name | Description |
---|---|
input | Emitted on each change with new value |
keydown | Emitted with keydown events |
blur | — |
focus | — |
Methods
Name | Description |
---|---|
focus | Puts keyboard focus in the text field |