Your search did not match any results.
Number Box



The NumberBox is a UI component that displays a numeric value and allows a user to modify it by typing in a value, and incrementing or decrementing it using the keyboard or mouse.

Backend API
Copy to CodePen
const DemoApp = angular.module('DemoApp', ['dx']); DemoApp.controller('DemoController', ($scope) => { const totalProductQuantity = 30; $scope.salesValue = 16; $scope.stockValue = 14; $scope.withButtons = { value: 20.5, showSpinButtons: true, showClearButton: true, }; $scope.disabled = { value: 20.5, showSpinButtons: true, showClearButton: true, disabled: true, }; $scope.minAndMaxOptions = { value: 15, min: 10, max: 20, showSpinButtons: true, }; $scope.salesOptions = { max: totalProductQuantity, min: 0, showSpinButtons: true, bindingOptions: { value: 'salesValue', }, onKeyDown(e) { const { event } = e; const str = event.key || String.fromCharCode(event.which); if (/^[.,e]$/.test(str)) { event.preventDefault(); } }, }; $scope.stockOptions = { min: 0, showSpinButtons: false, readOnly: true, bindingOptions: { value: 'stockValue', }, }; $scope.$watch('salesValue', () => { $scope.stockValue = totalProductQuantity - $scope.salesValue; }); });
<!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="" /> <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> <script src="index.js"></script> <link rel="stylesheet" type="text/css" href="styles.css" /> </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">Default mode</div> <div class="dx-field-value"> <div dx-number-box="{ }"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">With spin and clear buttons</div> <div class="dx-field-value"> <div dx-number-box="withButtons"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Disabled</div> <div class="dx-field-value"> <div dx-number-box="disabled"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">With max and min values</div> <div class="dx-field-value"> <div dx-number-box="minAndMaxOptions"></div> </div> </div> </div> <div class="dx-fieldset"> <div class="dx-fieldset-header">Event Handling</div> <div class="dx-field"> <div class="dx-field-label">This month sales</div> <div class="dx-field-value"> <div dx-number-box="salesOptions"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Stock</div> <div class="dx-field-value"> <div dx-number-box="stockOptions"></div> </div> </div> </div> </div> </div> </body> </html>