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
window.onload = function () { const totalProductQuantity = 30; const salesValue = ko.observable(16); const stockValue = ko.pureComputed(() => totalProductQuantity - salesValue()); const viewModel = { withButtons: { value: 20.5, showSpinButtons: true, showClearButton: true, }, disabled: { value: 20.5, showSpinButtons: true, showClearButton: true, disabled: true, }, minAndMaxOptions: { value: 15, min: 10, max: 20, showSpinButtons: true, }, salesOptions: { max: totalProductQuantity, min: 0, value: salesValue, showSpinButtons: true, onKeyPress(e) { const { event } = e; const str = event.key || String.fromCharCode(event.which); if (/^[.,e]$/.test(str)) { event.preventDefault(); } }, }, stockOptions: { value: stockValue, min: 0, showSpinButtons: false, readOnly: true, }, }; ko.applyBindings(viewModel, document.getElementById('number-box-demo')); };
<!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> <script src=""></script> <link rel="stylesheet" type="text/css" href="" /> <link rel="stylesheet" type="text/css" href="" /> <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"> <div id="number-box-demo" class="form"> <div class="dx-fieldset"> <div class="dx-field"> <div class="dx-field-label">Default mode</div> <div class="dx-field-value"> <div data-bind="dxNumberBox"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">With spin and clear buttons</div> <div class="dx-field-value"> <div data-bind="dxNumberBox: withButtons"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Disabled</div> <div class="dx-field-value"> <div data-bind="dxNumberBox: 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 data-bind="dxNumberBox: 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 data-bind="dxNumberBox: salesOptions"></div> </div> </div> <div class="dx-field"> <div class="dx-field-label">Stock</div> <div class="dx-field-value"> <div data-bind="dxNumberBox: stockOptions"></div> </div> </div> </div> </div> </div> </body> </html>