Verification Code
One-time code input with individual digit fields.
Selectors
.verification-code- Flex container for individual code input cells.
[data-name]- Sets the hidden input's
nameattribute for form submission. [data-error]- Error state modifier — turns borders red.
6-Digit
<div class="verification-code" data-name="code" role="group" aria-label="Verification code">
<input><input><input><input><input><input>
</div>
With Separator
–
<div class="verification-code" data-name="verify" role="group" aria-label="Verification code">
<input><input><input>
<span>–</span>
<input><input><input>
</div>
Error State
<div class="verification-code" data-name="error-demo" data-error role="group" aria-label="Verification code" aria-describedby="error-demo-msg">
<input value="1"><input value="2"><input value="3"><input value="4"><input value="5"><input value="6">
</div>
<small id="error-demo-msg">Invalid verification code.</small>
Usage
Use inside a .cider container. Handles auto-advance, backspace, paste, and arrow key navigation. Syncs values to a hidden input and auto-sets maxlength and inputmode.
Events
A complete event fires on the container when all slots are filled. Use it to auto-submit or validate.
Accessibility
- Each slot is labeled "Digit N of M" for screen readers.
- The container has
role="group"andaria-label="Verification code". - Sets
inputmode="numeric"andautocomplete="one-time-code"for mobile keyboards. - Paste support: paste a full code and it distributes across all slots automatically.
[data-name]sets the hidden input'snameattribute. Defaults to"code"if omitted.