InputZIP proactively eliminates errors by restricting data and input width to align with user expectations and business requirements.
Best practices
- Restrictions – 5 numeric characters only
- Label – always included, presents clear description of anticipated data
- ‘Smart’ value – ok as placeholders or to pre-fill input
- Help message – provides examples if needed (for example ‘e.g. 94117); don’t add examples as placeholders
- Width – default decreased to reflect anticipated value
Examples
Priority
Props
<InputZIP>
defaultValue
string | number
value
string | number
label
string
A label for the input
style
Deprecated
CSSProperties
className
string
Class on outer container element
id
string
ID for the input element.
placeholder
string
inputMode
"decimal" | "email" | "none" | "numeric" | "search" | "tel" | "text" | "url"
Hints at the type of data that might be entered by the user while editing the element or its contents
onFocus
FocusEventHandler<T>
onBlur
FocusEventHandler<T>
onChange
ChangeEventHandler<T>
name
string
disabled
boolean
autoComplete
string
maxLength
number
required
boolean
error
boolean
Flag to indicate if input is in an error (red outline) state. Use in conjunction with errorMessage to display a red error message.
fullWidth
boolean
feedbackMessages
Array<{
feedbackType: "error" | "info" | "success"
message: string
id?: string
}>A list of feedback messages to show for the group.
helpMessage
ReactNode
Optional help text shown below the input
errorMessage
ReactNode
Red text to be shown indicating the user is in an error state.
tooltip
ReactNode
Optional tooltip shown via an icon next to the label
tooltipPlacement
"bottom" | "left" | "right" | "top"
Positioning of tooltip
inputRef
(instance: HTMLInputElement | null) => void | RefObject<HTMLInputElement>
Gives access to the input DOM node.