React DateBox API

The DateBox is a widget that displays date and time in a specified format, and enables a user to pick or type in the required date/time value.

import DateBox from "devextreme-react/date-box"
Type: DateBoxTypes.default

DevExtreme widgets are integrated with many popular libraries and frameworks. See the Installation section (for JavaScript libraries) or the Prerequisites and Installation section (for ASP.NET MVC framework) to find details on setting up DevExtreme with a particular library or framework.

The following code shows how to create the DateBox widget using every supported library and framework. For more details on working with widgets in these libraries and frameworks, see the Widget Basics topic for jQuery, Angular, AngularJS, Knockout or ASP.NET MVC.

jQuery
JavaScript
HTML
$(function () {
    $("#dateBox").dxDateBox({
        min: new Date(2000, 0, 1),
        max: new Date(2029, 11, 31),
        value: new Date()
    });
});
<div id="dateBox"></div>
Angular
HTML
TypeScript
<dx-date-box
    [min]="minDate"
    [max]="maxDate"
    [(value)]="currentDate">
</dx-date-box>
import { DxDateBoxModule } from "devextreme-angular";
// ...
export class AppComponent {
    minDate = new Date(2000, 0, 1);
    maxDate = new Date(2029, 11, 31);
    currentDate = new Date();
}
@NgModule({
    imports: [
        // ...
        DxDateBoxModule
    ],
    // ...
})
AngularJS
HTML
JavaScript
<div ng-controller="DemoController">
    <div dx-date-box="{
        min: minDate,
        max: maxDate,
        bindingOptions: {
            value: 'currentDate'
        }
    }"></div>
</div>
angular.module("DemoApp", ["dx"])
    .controller("DemoController", function ($scope) {
        $scope.minDate = new Date(2000, 0, 1);
        $scope.maxDate = new Date(2029, 11, 31);
        $scope.currentDate = new Date();
    });
Knockout
HTML
JavaScript
<div data-bind="dxDateBox: {
    min: new Date(2000, 0, 1),
    max: new Date(2029, 11, 31),
    value: currentDate
}"></div>
var viewModel = {
    currentDate: ko.observable(new Date())
};
ko.applyBindings(viewModel);
ASP.NET MVC Controls
Razor C#
Razor VB
@(Html.DevExtreme().DateBox()
    .ID("dateBox")
    .Min(new DateTime(2000, 1, 1))
    .Max(new DateTime(2029, 12, 31))
    .Value(DateTime.Now)
)
@(Html.DevExtreme().DateBox() _
    .ID("dateBox") _
    .Min(New DateTime(2000, 1, 1)) _
    .Max(New DateTime(2029, 12, 31)) _
    .Value(DateTime.Now)
)

View Demo

See Also

Configuration

An object defining configuration options for the DateBox widget.

Name Description
acceptCustomValue

Specifies whether or not the widget allows an end-user to enter a custom value.

accessKey

Specifies the shortcut key that sets focus on the widget.

activeStateEnabled

Specifies whether or not the widget changes its state when interacting with a user.

adaptivityEnabled

Specifies whether or not adaptive widget rendering is enabled on a small screen.

applyButtonText

The text displayed on the Apply button.

applyValueMode

Specifies the way an end-user applies the selected value.

calendarOptions

Configures the calendar's value picker. Applies only if the pickerType is "calendar".

cancelButtonText

The text displayed on the Cancel button.

dateOutOfRangeMessage

Specifies the message displayed if the specified date is later than the max value or earlier than the min value.

dateSerializationFormat

Specifies the date-time value serialization format. Use it only if you do not specify the value at design time.

deferRendering

Specifies whether to render the drop-down field's content when it is displayed. If false, the content is rendered immediately.

disabled

Specifies whether the widget responds to user interaction.

disabledDates

Specifies dates to be disabled. Applies only if pickerType is "calendar".

displayFormat

Specifies the date display format. Ignored if the pickerType option is "native"

dropDownButtonTemplate

Specifies a custom template for the drop-down button.

elementAttr

Specifies the attributes to be attached to the widget's root element.

focusStateEnabled

Specifies whether the widget can be focused using keyboard navigation.

height

Specifies the widget's height.

hint

Specifies text for a hint that appears when a user pauses on the widget.

hoverStateEnabled

Specifies whether the widget changes its state when a user pauses on it.

inputAttr

Specifies the attributes to be passed on to the underlying HTML element.

interval

Specifies the interval between neighboring values in the popup list in minutes.

invalidDateMessage

Specifies the message displayed if the typed value is not a valid date or time.

isValid

Specifies whether the editor's value is valid.

max

The last date that can be selected within the widget.

maxLength

Specifies the maximum number of characters you can enter into the textbox.

min

The minimum date that can be selected within the widget.

name

The value to be assigned to the name attribute of the underlying HTML element.

onChange

A function that is executed when the widget loses focus after the text field's content was changed using the keyboard.

onClosed

A function that is executed once the drop-down editor is closed.

onContentReady

A function that is executed when the widget's content is ready and each time the content is changed.

onCopy

A function that is executed when the widget's input has been copied.

onCut

A function that is executed when the widget's input has been cut.

onDisposing

A function that is executed before the widget is disposed of.

onEnterKey

A function that is executed when the Enter key has been pressed while the widget is focused.

onFocusIn

A function that is executed when the widget gets focus.

onFocusOut

A function that is executed when the widget loses focus.

onInitialized

A function used in JavaScript frameworks to save the widget instance.

onInput

A function that is executed each time the widget's input is changed while the widget is focused.

onKeyDown

A function that is executed when a user is pressing a key on the keyboard.

onKeyPress

A function that is executed when a user presses a key on the keyboard.

onKeyUp

A function that is executed when a user releases a key on the keyboard.

onOpened

A function that is executed once the drop-down editor is opened.

onOptionChanged

A function that is executed after a widget option is changed.

onPaste

A function that is executed when the widget's input has been pasted.

onValueChanged

A function that is executed after the widget's value is changed.

opened

Specifies whether or not the drop-down editor is displayed.

openOnFieldClick

Specifies whether a user can open the drop-down list by clicking a text field.

pickerType

Specifies the type of the date/time picker.

placeholder

Specifies a placeholder for the input field.

readOnly

A Boolean value specifying whether or not the widget is read-only.

rtlEnabled

Switches the widget to a right-to-left representation.

showAnalogClock

Specifies whether to show the analog clock in the value picker. Applies only if type is "datetime" and pickerType is "calendar".

showClearButton

Specifies whether to display the Clear button in the widget.

showDropDownButton

Specifies whether the drop-down button is visible.

spellcheck

Specifies whether or not the widget checks the inner text for spelling mistakes.

stylingMode

Specifies how the widget's text field is styled.

tabIndex

Specifies the number of the element when the Tab key is used for navigating.

text

The read-only option that holds the text displayed by the widget input element.

type

A format used to display date/time information.

useMaskBehavior

Specifies whether to control user input using a mask created based on the displayFormat.

validationError

Specifies information on the validation error when using a custom validation engine. Should be changed at runtime along with the isValid option.

validationMessageMode

Specifies how the message about the validation rules that are not satisfied by this editor's value is displayed.

value

An object or a value specifying the date and time currently selected using the date box.

valueChangeEvent

Specifies the DOM events after which the widget's value should be updated.

visible

Specifies whether the widget is visible.

width

Specifies the widget's width.

Methods

This section describes members used to manipulate the widget.

Name Description
beginUpdate()

Prevents the widget from refreshing until the endUpdate() method is called.

blur()

Removes focus from the input element.

close()

Closes the drop-down editor.

content()

Gets the popup window's content.

defaultOptions(rule)

Specifies the device-dependent default configuration options for this component.

dispose()

Disposes of all the resources allocated to the DateBox instance.

element()

Gets the root widget element.

endUpdate()

Refreshes the widget after a call of the beginUpdate() method.

field()

Gets the widget's <input> element.

focus()

Sets focus to the input element representing the widget.

getInstance(element)

Gets the instance of a widget found using its DOM node.

instance()

Gets the widget's instance. Use it to access other methods of the widget.

off(eventName)

Detaches all event handlers from a single event.

off(eventName, eventHandler)

Detaches a particular event handler from a single event.

on(eventName, eventHandler)

Subscribes to an event.

on(events)

Subscribes to events.

open()

Opens the drop-down editor.

option()

Gets all widget options.

option(optionName)

Gets the value of a single option.

option(optionName, optionValue)

Updates the value of a single option.

option(options)

Updates the values of several options.

registerKeyHandler(key, handler)

Registers a handler to be executed when a user presses a specific key.

repaint()

Repaints the widget without reloading data. Call it to update the widget's markup.

reset()

Resets the value option to the default value.

Events

This section describes events fired by this widget.

Name Description
change

Raised when the widget loses focus after the text field's content was changed using the keyboard.

closed

Raised once the drop-down editor is closed.

contentReady

Raised when the widget's content is ready.

copy

Raised when the widget's input has been copied.

cut

Raised when the widget's input has been cut.

disposing

Raised before the widget is disposed of.

enterKey

Raised when the Enter key has been pressed while the widget is focused.

focusIn

Raised when the widget gets focus.

focusOut

Raised when the widget loses focus.

initialized

Raised only once, after the widget is initialized.

input

Raised each time the widget's input is changed while the widget is focused.

keyDown

Raised when a user is pressing a key on the keyboard.

keyPress

Raised when a user presses a key on the keyboard.

keyUp

Raised when a user releases a key on the keyboard.

opened

Raised once the drop-down editor is opened.

optionChanged

Raised after a widget option is changed.

paste

Raised when the widget's input has been pasted.

valueChanged

Raised after the widget's value is changed.

See Also