Date field (with calendar picker), also known as date picker, provides single date entry with a text field or selection through a visual calendar element tied to the input.
<SingleInputDateField>
To enable the date picker feature, you must pass both a from<TIME>
property (i.e., fromDate
, fromMonth
, etc.) and a to<TIME>
property (i.e., toDate
, toMonth
, etc.) to the date field component.
Code snippet
Props
Name | Type | Default | Description |
---|---|---|---|
name required | string | The | |
onBlur | (event: React.FocusEvent<HTMLInputElement>) => any | Called anytime any date input is blurred | |
onChange required | (updatedValue: string, formattedValue: string) => any | Called anytime any date input is changed. This function is called with two arguments.
The first argument should be used to update whatever state your application uses to
supply back to this component's | |
value | string | Sets the input's | |
defaultMonth | Date | The initial month to show in the calendar picker. If not provided, defaults to the month of the currently selected date. | |
fromDate | Date | Earliest day to start month navigation in the calendar picker. (This does not restrict dates entered manually.) | |
fromMonth | Date | Earliest month to start month navigation in the calendar picker. (This does not restrict dates entered manually.) | |
fromYear | number | Earliest year to start month navigation in the calendar picker. (This does not restrict dates entered manually.) | |
toDate | Date | Latest day to end month navigation in the calendar picker. (This does not restrict dates entered manually.) | |
toMonth | Date | Latest month to end month navigation in the calendar picker. (This does not restrict dates entered manually.) | |
toYear | number | Latest year to end month navigation in the calendar picker. (This does not restrict dates entered manually.) |
Guidance
When to use
- Use the date picker for dates that have happened within the last year, in the future, or is relevant to selecting the day of the week.
When to consider alternatives
- Don't use if users are entering a memorable date. Instead, use either single- or multi-input date fields.
- Don't use if the date occurred in the distant past (like date of birth).
Usage
Allow users to have flexibility in entering the date, such as allowing one-digit numbers with or without "0" prior to the number, or entering a date with or without slashes to separate month, day, and year.
- Example: "1" as well as "01" for a month or day.
- Example: "05/18/2022" as well as "05182022".
Accessibility
- These text fields should follow the accessibility guidelines for all text inputs.
- Users will be able to enter a variety of date formats that automatically format to the correct date format of MM/DD/YYYY. This change happens once the form field loses focus. For example, a user enters a date as "4122020" and it changes to "04/01/2020" once focus leaves the date input.
- Instructions are available make this more usable/accessible for assistive technology.
Customization
The following Sass variables can be overridden to customize Input/Form components: