OtpInput
The OTP input is used for MFA procedure of authenticating users by a one-time password.
Usage
Basic
Basic usage examples of BitOtpInput, including different lengths, disabled state, auto-shift, and autofocus.
Basic
Disabled
Length = 4
AutoShift
AutoFocus
Label
Label can express the title of the otp inputs.
Label:
LabelTemplate:
Type
Set different input types for the OTP input: text, number, and password.
Directions
Demonstrating various layout directions for BitOtpInput: default, reversed, vertical, and reversed vertical.
Binding
Examples of one-way and two-way data binding with BitOtpInput.
Events
Handle various events in BitOtpInput, including change, fill, focus, input, keydown, and paste events.
OnChange value:
OnFill value:
Focus type:
Input index:
Focus type:
Input index:
Value:
Input index:
Key & Code: [] []
Input index:
Focus type:
Input index:
Validation
Use data annotations to validate the BitOtpInput component in a form submission scenario.
Size
Varying sizes for inputs tailored to meet diverse design needs, ensuring flexibility and visual hierarchy within your interface.
Style & Class
Explore styling and class customization for BitOtpInput, including component styles, custom classes, and detailed styles.
Component's Style & Class:
Styles & Classes:
RTL
Use BitOtpInput in right-to-left (RTL).
API
BitOtpInput parameters
Name |
Type |
Default value |
Description |
---|---|---|---|
AutoFocus | bool | false | If true, the first input is auto focused. |
AutoShift | bool | false | Enables auto shifting the indexes while clearing the inputs using Delete or Backspace. |
Classes | BitOtpInputClassStyles? | null | Custom CSS classes for different parts of the BitOtpInput. |
Label | string? | null | Label displayed above the inputs. |
LabelTemplate | RenderFragment? | null | Custom template for the label displayed above the inputs. |
Length | int | 5 | Length of the OTP or number of the inputs. |
OnFill | EventCallback<string?> | Callback for when all of the inputs are filled. | |
OnFocusIn | EventCallback<FocusEventArgs> | onfocusin event callback for each input. | |
OnFocusOut | EventCallback<FocusEventArgs> | onfocusout event callback for each input. | |
OnInput | EventCallback<ChangeEventArgs> | oninput event callback for each input. | |
OnKeyDown | EventCallback<KeyboardEventArgs> | onkeydown event callback for each input. | |
OnPaste | EventCallback<ClipboardEventArgs> | onpaste event callback for each input. | |
Reversed | bool | false | Defines whether to render inputs in the opposite direction. |
Size | BitSize? | null | The size of the inputs. |
Styles | BitOtpInputClassStyles? | null | Custom CSS styles for different parts of the BitOtpInput. |
Type | BitInputType? | null | Type of the inputs. |
Vertical | bool | false | Defines whether to render inputs vertically. |
BitOtpInput public members
Name |
Type |
Default value |
Description |
---|---|---|---|
InputElements | ElementReference[] | The ElementReferences to the input elements of the BitOtpInput. | |
FocusAsync | ValueTask | Gives focus to a specific input element of the BitOtpInput. |
BitInputBase parameters
Name |
Type |
Default value |
Description |
---|---|---|---|
DisplayName | string? | null | Gets or sets the display name for this field. |
InputHtmlAttributes | IReadOnlyDictionary<string, object>? | null | Gets or sets a collection of additional attributes that will be applied to the created element. |
Name | string? | null | Gets or sets the name of the element. Allows access by name from the associated form. |
NoValidate | bool | false | Disables the validation of the input. |
OnChange | EventCallback<TValue?> | Callback for when the input value changes. | |
ReadOnly | bool | false | Makes the input read-only. |
Required | bool | false | Makes the input required. |
Value | TValue? | null | Gets or sets the value of the input. This should be used with two-way binding. |
BitInputBase public members
Name |
Type |
Default value |
Description |
---|---|---|---|
InputElement | ElementReference | The ElementReference of the input element. | |
FocusAsync() | () => ValueTask | Gives focus to the input element. | |
FocusAsync(bool preventScroll) | (bool preventScroll) => ValueTask | Gives focus to the input element. |
BitComponentBase parameters
Name |
Type |
Default value |
Description |
---|---|---|---|
AriaLabel | string? | null | The aria-label of the control for the benefit of screen readers. |
Class | string? | null | Custom CSS class for the root element of the component. |
Dir | BitDir? | null | Determines the component direction. |
HtmlAttributes | Dictionary<string, object> | new Dictionary<string, object>() | Capture and render additional attributes in addition to the component's parameters. |
Id | string? | null | Custom id attribute for the root element. if null the UniqueId will be used instead. |
IsEnabled | bool | true | Whether or not the component is enabled. |
Style | string? | null | Custom CSS style for the root element of the component. |
Visibility | BitVisibility | BitVisibility.Visible | Whether the component is visible, hidden or collapsed. |
BitComponentBase public members
Name |
Type |
Default value |
Description |
---|---|---|---|
UniqueId | Guid | Guid.NewGuid() | The readonly unique id of the root element. it will be assigned to a new Guid at component instance construction. |
RootElement | ElementReference | The ElementReference of the root element. |
BitOtpInputClassStyles properties
Name |
Type |
Default value |
Description |
---|---|---|---|
Root | string? | null | Custom CSS classes/styles for the root element of the otp input. |
Label | string? | null | Custom CSS classes/styles for the label of the otp input. |
InputsWrapper | string? | null | Custom CSS classes/styles for the wrapper element of the inputs. |
Input | string? | null | Custom CSS classes/styles for each input in otp input. |
Focused | string? | null | Custom CSS classes/styles for the focused input in otp input. |
BitSize enum
Name |
Value |
Description |
---|---|---|
Small | 0 | The small size. |
Medium | 1 | The medium size. |
Large | 2 | The large size. |
BitInputType enum
Name |
Value |
Description |
---|---|---|
Text | 0 | The input expects text characters. |
Password | 1 | The input expects password characters. |
Number | 2 | The input expects number characters. |
3 | The input expects email characters. | |
Tel | 4 | The input expects tel characters. |
Url | 5 | The input expects url characters. |
BitVisibility enum
Name |
Value |
Description |
---|---|---|
Visible | 0 | The content of the component is visible. |
Hidden | 1 | The content of the component is hidden, but the space it takes on the page remains (visibility:hidden). |
Collapsed | 2 | The component is hidden (display:none). |
BitDir enum
Name |
Value |
Description |
---|---|---|
Ltr | 0 | Ltr (left to right) is to be used for languages that are written from the left to the right (like English). |
Rtl | 1 | Rtl (right to left) is to be used for languages that are written from the right to the left (like Arabic). |
Auto | 2 | Auto lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then applies that directionality to the whole element. |
- On this page