DevExtreme v26.1 is now available.

Explore our newest features/capabilities and share your thoughts with us.

Your search did not match any results.

React Date Box - Formatting

Use the displayFormat property to change how DateBox displays date values.

Backend API
import React from 'react'; import DateBox from 'devextreme-react/date-box'; const date = new Date(2025, 9, 16, 15, 8, 12); const dataTimeLabel = { 'aria-label': 'Date Time' }; const dateLabel = { 'aria-label': 'Date' }; function App() { return ( <div> <div className="dx-fieldset"> <div className="dx-field"> <div className="dx-field-label">Locale-dependent format</div> <div className="dx-field-value"> <DateBox type="datetime" placeholder="12/31/2025, 2:52 PM" showClearButton={true} inputAttr={dataTimeLabel} useMaskBehavior={true} /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Built-in predefined format</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="10/16/2025" showClearButton={true} inputAttr={dateLabel} useMaskBehavior={true} type="date" displayFormat="shortdate" /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Locale Data Markup Language (LDML) pattern</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="Thursday, 16 of Oct, 2025 14:52" showClearButton={true} inputAttr={dateLabel} useMaskBehavior={true} type="datetime" displayFormat="EEEE, d of MMM, yyyy HH:mm" /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Format with literal characters</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="Year: 2025" showClearButton={true} useMaskBehavior={true} inputAttr={dateLabel} type="date" displayFormat="'Year': yyyy" /> </div> </div> </div> </div> ); } export default App;
import React from 'react'; import DateBox from 'devextreme-react/date-box'; const date = new Date(2025, 9, 16, 15, 8, 12); const dataTimeLabel = { 'aria-label': 'Date Time' }; const dateLabel = { 'aria-label': 'Date' }; function App() { return ( <div> <div className="dx-fieldset"> <div className="dx-field"> <div className="dx-field-label">Locale-dependent format</div> <div className="dx-field-value"> <DateBox type="datetime" placeholder="12/31/2025, 2:52 PM" showClearButton={true} inputAttr={dataTimeLabel} useMaskBehavior={true} /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Built-in predefined format</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="10/16/2025" showClearButton={true} inputAttr={dateLabel} useMaskBehavior={true} type="date" displayFormat="shortdate" /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Locale Data Markup Language (LDML) pattern</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="Thursday, 16 of Oct, 2025 14:52" showClearButton={true} inputAttr={dateLabel} useMaskBehavior={true} type="datetime" displayFormat="EEEE, d of MMM, yyyy HH:mm" /> </div> </div> <div className="dx-field"> <div className="dx-field-label">Format with literal characters</div> <div className="dx-field-value"> <DateBox defaultValue={date} placeholder="Year: 2025" showClearButton={true} useMaskBehavior={true} inputAttr={dateLabel} type="date" displayFormat="'Year': yyyy" /> </div> </div> </div> </div> ); } export default App;
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.tsx'; ReactDOM.render(<App />, document.getElementById('app'));
import React from 'react'; import ReactDOM from 'react-dom'; import App from './App.js'; ReactDOM.render(<App />, document.getElementById('app'));
<!DOCTYPE html> <html lang="en"> <head> <title>DevExtreme Demo</title> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0" /> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/26.1.5/css/dx.light.css" /> <link rel="stylesheet" type="text/css" href="./bundle.css" /> </head> <body class="dx-viewport"> <div class="demo-container"> <div id="app"></div> </div> <script src="bundles/vendor/react.vendor.js"></script> <script src="./bundle.js"></script> </body> </html>
.dx-fieldset { min-height: 500px; }

This demo illustrates the following:

  • Locale-dependent format The DateBox formats values based upon a user's locale. This is the default format. As such, you do not need to define the displayFormat property. Refer to the following help topic for more information: Localize Dates, Numbers, and Currencies

  • Built-in predefined formats DevExtreme supports various predefined formats. You can use simple strings or shortcuts that define commonly used date formats instead of complex expressions. Review the linked document for a list of values you can assign to displayFormat. This demo uses the "shortdate" format.

  • LDML pattern Use an LDML pattern to construct a custom date-time format string. This demo sets displayFormat property to "EEEE, d of MMM, yyyy HH:mm". This expression displays week day, day number, month, year, hour, and minute. The editor displays the formatted value. Refer to the following help topic for information about supported format characters: Custom Format String.

  • Format with literal characters Specify the displayFormat property as a string that contains literal and LDML characters. Wrap any characters that are not part of the LDML pattern in quotation marks - otherwise, they may be interpreted as wildcards. In this example, if you remove quotation marks from the word "Year", the letter "a" is interpreted as an "AM/PM" placeholder.

You can also use an input mask in the DateBox. Input masks ensure that input values match the displayFormat (set the useMaskBehavior value to true).

For additional formatting-related information, please refer to the following help topic: Value Formatting.