DevExtreme v23.1 is now available.

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

Your search did not match any results.
Check Box

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).

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.

Backend API
Copy to CodePen
const DemoApp = angular.module('DemoApp', ['dx']); DemoApp.controller('DemoController', ($scope) => { $scope.checkBoxValue = null; $scope.checkBox = { checked: { value: true, elementAttr: { 'aria-label': 'Checked', }, }, unchecked: { value: false, elementAttr: { 'aria-label': 'Unchecked', }, }, indeterminate: { value: null, elementAttr: { 'aria-label': 'Indeterminate', }, }, threeStateMode: { enableThreeStateBehavior: true, value: null, elementAttr: { 'aria-label': 'Three state mode', }, }, handler: { bindingOptions: { value: 'checkBoxValue', }, elementAttr: { 'aria-label': 'Handle value change', }, }, disabled: { disabled: true, bindingOptions: { value: 'checkBoxValue', }, elementAttr: { 'aria-label': 'Disabled', }, }, customSize: { value: null, iconSize: 30, elementAttr: { 'aria-label': 'Custom size', }, }, withText: { value: true, text: 'Label', }, }; });
<!DOCTYPE html> <html xmlns=""> <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=1.0" /> <script src=""></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="" /> <script src=""></script> <script>window.angular || document.write(decodeURIComponent('%3Cscript src="js/angular.min.js"%3E%3C/script%3E'))</script> <script src=""></script> <link rel="stylesheet" type="text/css" href="styles.css" /> <script src="index.js"></script> </head> <body class="dx-viewport"> <div class="demo-container" ng-app="DemoApp" ng-controller="DemoController"> <div class="form"> <div class="dx-fieldset"> <div class="dx-field"> <div class="dx-field-label">Checked</div> <div class="dx-field-value"> <div dx-check-box="checkBox.checked"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Unchecked</div> <div class="dx-field-value"> <div dx-check-box="checkBox.unchecked"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Indeterminate</div> <div class="dx-field-value"> <div dx-check-box="checkBox.indeterminate"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Three state mode</div> <div class="dx-field-value"> <div dx-check-box="checkBox.threeStateMode"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Handle value change</div> <div class="dx-field-value"> <div dx-check-box="checkBox.handler"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Disabled</div> <div class="dx-field-value"> <div dx-check-box="checkBox.disabled"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Custom size</div> <div class="dx-field-value"> <div dx-check-box="checkBox.customSize"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">With label</div> <div class="dx-field-value"> <div dx-check-box="checkBox.withText"></div> </div> </div> </div> </div> </div> </body> </html>