DevExtreme v24.1 is now available.

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

Your search did not match any results.

Check Box

When you add the CheckBox component to an application, specify its value property to set its state. The CheckBox can have one of the following states:

  • Checked (value is true).
  • Unchecked (value is false).
  • Indeterminate (value is null or undefined).
DevExtreme Accessibility Compliance
DevExtreme component libraries meet a variety of WCAG and Section 508 compliance standards. To assess this demo’s accessibility level, click the Run AXE® Validation button to launch the AXE® web accessibility evaluation tool.
All trademarks or registered trademarks are property of their respective owners. AXE® Terms of Use
The overall accessibility level of your application depends on the CheckBox features used.
Backend API
$(() => { $('#checked').dxCheckBox({ value: true, elementAttr: { 'aria-label': 'Checked', }, }); $('#unchecked').dxCheckBox({ value: false, elementAttr: { 'aria-label': 'Unchecked', }, }); $('#indeterminate').dxCheckBox({ value: null, elementAttr: { 'aria-label': 'Indeterminate', }, }); $('#threeStateMode').dxCheckBox({ enableThreeStateBehavior: true, value: null, elementAttr: { 'aria-label': 'Three state mode', }, }); $('#handler').dxCheckBox({ value: null, elementAttr: { 'aria-label': 'Handle value change', }, onValueChanged(data) { disabledCheckbox.option('value', data.value); }, }); const disabledCheckbox = $('#disabled').dxCheckBox({ value: null, disabled: true, elementAttr: { 'aria-label': 'Disabled', }, }).dxCheckBox('instance'); $('#customSize').dxCheckBox({ value: null, iconSize: 30, elementAttr: { 'aria-label': 'Custom size', }, }); $('#withText').dxCheckBox({ value: true, text: 'Label', }); });
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" 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" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script>window.jQuery || document.write(decodeURIComponent('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script> <link rel="stylesheet" type="text/css" href="https://cdn3.devexpress.com/jslib/24.1.4/css/dx.light.css" /> <script src="js/dx.all.js"></script> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container"> <div class="form"> <div class="dx-fieldset"> <div class="dx-field"> <div class="dx-field-label">Checked</div> <div class="dx-field-value"> <div id="checked"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Unchecked</div> <div class="dx-field-value"> <div id="unchecked"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Indeterminate</div> <div class="dx-field-value"> <div id="indeterminate"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Three state mode</div> <div class="dx-field-value"> <div id="threeStateMode"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Handle value change</div> <div class="dx-field-value"> <div id="handler"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Disabled</div> <div class="dx-field-value"> <div id="disabled"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Custom size</div> <div class="dx-field-value"> <div id="customSize"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">With label</div> <div class="dx-field-value"> <div id="withText"></div> </div> </div> </div> </div> </div> </body> </html>

The component supports the three state mode. In this demo, the enableThreeStateBehavior property of the "Three state mode" CheckBox is enabled. You can cycle through the states of this CheckBox in the following order:

Indeterminate → Checked → Unchecked → Indeterminate → ...

Specify the onValueChanged property to handle value changes. In this demo, the value of the "Handle value change" CheckBox is passed to the "Disabled" CheckBox. Click the first CheckBox to see how it affects the second one.

You can use the iconSize property to specify custom dimensions for the CheckBox. To add a label to the CheckBox, specify the text property.