DateRangePickerComponent

23 Sep 20258 minutes to read

Represents the Essential JS 2 Angular DateRangePicker Component.

<ejs-daterangepicker [startDate]='date' [endDate]='date'></ejs-daterangepicker>

Properties

allowEdit boolean

Support for allowEdit has been provided from
v16.2.46.
Specifies whether the input textbox is editable or not. Here the user can select the value from the
popup and cannot edit in the input textbox.

Defaults to true

cssClass string

Sets the root CSS class to the DateRangePicker which allows you to customize the appearance.

Defaults to ’’

dayHeaderFormat DayHeaderFormats

Specifies the format of the day that to be displayed in header. By default, the format is ‘short’.
Possible formats are:

  • Short - Sets the short format of day name (like Su ) in day header.
  • Narrow - Sets the single character of day name (like S ) in day header.
  • Abbreviated - Sets the min format of day name (like Sun ) in day header.
  • Wide - Sets the long format of day name (like Sunday ) in day header.

Defaults to Short

depth CalendarView

Sets the maximum level of view (month, year, decade) in the Calendar.
Depth view should be smaller than the start view to restrict its view navigation.

Defaults to Month

enablePersistence boolean

Enable or disable the persisting component’s state between the page reloads. If enabled, following list of states will be persisted.

  1. startDate
  2. endDate
  3. value

Defaults to false

enableRtl boolean

Enable or disable rendering component in right to left direction.

Defaults to false

enabled boolean

Specifies the component to be disabled which prevents the DateRangePicker from user interactions.

Defaults to true

endDate Date

Gets or sets the end date of the date range selection.

Defaults to null

firstDayOfWeek number

Gets or sets the Calendar’s first day of the week. By default, the first day of the week will be based on the current culture.

For more details about firstDayOfWeek refer to
First day of week documentation.

Defaults to null

floatLabelType FloatLabelType|string

Specifies the placeholder text to be floated.
Possible values are:
Never: The label will never float in the input when the placeholder is available.
Always: The floating label will always float above the input.
Auto: The floating label will float above the input after focusing or entering a value in the input.

Defaults to Syncfusion.EJ2.Inputs.FloatLabelType.Never

format string|RangeFormatObject

Sets or gets the required date format to the start and end date string.

For more details refer to
Formatsample.

Defaults to null

fullScreenMode boolean

Specifies the component popup display full screen in mobile devices.

Defaults to false

htmlAttributes { : }

You can add the additional html attributes such as disabled, value etc., to the element.
If you configured both property and equivalent html attribute then the component considers the property value.

<ejs-daterangepicker [htmlAttributes]="htmlAttributes"></ejs-daterangepicker>
import { Component, ViewEncapsulation } from '@angular/core';

@Component({
  selector: 'app-root',
  styleUrls: ['app.component.css'],
  templateUrl: 'app.component.html',
  encapsulation: ViewEncapsulation.None
})

export class AppComponent {
  constructor() { }
  public htmlAttributes = { name: "range", placeholder:"Choose a range" };
}

Defaults to {}

inputFormats string[]|RangeFormatObject[]

Specifies an array of acceptable date input formats for parsing user input.

Defaults to null

keyConfigs { : }

Customizes the key actions in DateRangePicker.
For example, when using German keyboard, the key actions can be customized using these shortcuts.
Input Navigation

Key action
Key
altUpArrow
alt+uparrow
altDownArrow
alt+downarrow
escape
escape

Calendar Navigation (Use the following list of keys to navigate the currently focused Calendar after the popup has opened).

</tr> </table> ```html <ejs-daterangepicker [keyConfigs]="keyConfigs"></ejs-daterangepicker> ``` ```ts import { Component, ViewEncapsulation } from '@angular/core'; @Component({ selector: 'app-root', styleUrls: ['app.component.css'], templateUrl: 'app.component.html', encapsulation: ViewEncapsulation.None }) export class AppComponent { constructor() { } public keyConfigs ={ select: "space", home: "ctrl+home", end: "ctrl+end" }; } ``` Defaults to *null*

locale string

Overrides the global culture and localization value for this component. Default global culture is 'en-US'. Defaults to *'en-US'*

max Date

Gets or sets the maximum date that can be selected in the calendar-popup. Defaults to *new Date(2099, 11, 31)*

maxDays number

Specifies the maximum span of days that can be allowed in a date range selection. > For more details refer to [`Range Span`](../../daterangepicker/range-restriction/#range-span) documentation. Defaults to *null*

min Date

Gets or sets the minimum date that can be selected in the calendar-popup. Defaults to *new Date(1900, 00, 01)*

minDays number

Specifies the minimum span of days that can be allowed in date range selection. > For more details refer to [`Range Span`](../../daterangepicker/range-restriction/#range-span) documentation. Defaults to *null*

openOnFocus boolean

By default, the popup opens while clicking on the daterangepicker icon. If you want to open the popup while focusing the daterange input then specify its value as true. Defaults to *false*

placeholder string

Specifies the placeholder text that need to be displayed in the DateRangePicker component. Defaults to *null*

presets PresetsModel[]

Set the predefined ranges which let the user pick required range easily in a component. > For more details refer to [`Preset Ranges`](../../daterangepicker/customization#preset-ranges) documentation. ```html <ejs-daterangepicker [presets]="presets"></ejs-daterangepicker> ``` ```ts import { Component, ViewEncapsulation } from '@angular/core'; @Component({ selector: 'app-root', styleUrls: ['app.component.css'], templateUrl: 'app.component.html', encapsulation: ViewEncapsulation.None }) export class AppComponent { constructor() { } public presets = [ { label: 'Today', start: new Date(), end: new Date() }, { label: 'This Month', start: new Date(new Date().setDate(1)), end: new Date() } ]; } ``` Defaults to *null*

readonly boolean

Denies the editing the ranges in the DateRangePicker component. Defaults to *false*

separator string

Sets or gets the string that used between the start and end date string. Defaults to *'-'*

serverTimezoneOffset number

By default, the date value will be processed based on system time zone. If you want to process the initial date value using server time zone then specify the time zone value to `serverTimezoneOffset` property. Defaults to *null*

showClearButton boolean

Specifies whether to show or hide the clear icon Defaults to *true*

start any

Specifies the initial view of the Calendar when it is opened. With the help of this property, initial view can be changed to year or decade view. Defaults to *Month*

startDate Date

Gets or sets the start date of the date range selection. Defaults to *null*

strictMode boolean

Specifies the component to act as strict which allows entering only a valid date range in a DateRangePicker. > For more details refer to [`Strict Mode`](../../daterangepicker/range-restriction#strict-mode)documentation. Defaults to *false*

value Date[]|DateRange

Gets or sets the start and end date of the Calendar. ```html <ejs-daterangepicker [value]="value"></ejs-daterangepicker> ``` ```ts import { Component, ViewEncapsulation } from '@angular/core'; @Component({ selector: 'app-root', styleUrls: ['app.component.css'], templateUrl: 'app.component.html', encapsulation: ViewEncapsulation.None }) export class AppComponent { constructor() { } public value = [new Date(), new Date("12/12/2019")]; } ``` Defaults to *null*

weekNumber boolean

Determines whether the week number of the Calendar is to be displayed or not. The week number is displayed in every week row. > For more details about weekNumber refer to [`Calendar with week number`](../../calendar/how-to/render-the-calendar-with-week-numbers)documentation. Defaults to *false*

weekRule WeekRule

Specifies the rule for defining the first week of the year. Defaults to *FirstDay*

width number|string

Specifies the width of the DateRangePicker component. Defaults to *''*

zIndex number

specifies the z-index value of the dateRangePicker popup element. Defaults to *1000* ## Methods ### destroy To destroy the widget. Returns *void* ### focusIn Sets the focus to widget for interaction. Returns *void* ### focusOut Remove the focus from widget, if the widget is in focus state. Returns *void* ### getPersistData Return the properties that are maintained upon browser refresh. Returns *string* ### getSelectedRange Return the selected range and day span in the DateRangePicker. Returns *Object* ### hide To close the Popup container in the DateRangePicker component. Returns *void* ### show To open the Popup container in the DateRangePicker component. Returns *void* ## Events

blur EmitType<BlurEventArgs>

Triggers when the control loses the focus.

change EmitType<RangeEventArgs>

Triggers when the Calendar value is changed.

cleared EmitType<ClearedEventArgs>

Triggers when daterangepicker value is cleared using clear button.

close EmitType<Object>

Triggers when the DateRangePicker is closed.

created EmitType<Object>

Triggers when Calendar is created.

destroyed EmitType<Object>

Triggers when Calendar is destroyed.

focus EmitType<FocusEventArgs>

Triggers when the control gets focus. Triggers when the Calendar is navigated to another view or within the same level of view.

open EmitType<Object>

Triggers when the DateRangePicker is opened.

renderDayCell EmitType<RenderDayCellEventArgs>

Triggers when each day cell of the Calendar is rendered.

select EmitType<Object>

Triggers on selecting the start and end date.
Key action
Key
controlUp
ctrl+38
controlDown
ctrl+40
moveDown
downarrow
pageUp
pageup
pageDown
pagedown
shiftPageUp
shift+pageup
shiftPageDown
shift+pagedown
moveUp
uparrow
moveLeft
leftarrow
moveRight
rightarrow
select
enter
home
home
end
end
controlHome
ctrl+home
controlEnd
ctrl+end
altUpArrow
alt+uparrow
spacebar
space
enter
enter
altRightArrow
alt+rightarrow
altLeftArrow
alt+leftarrow