DOM & Validation

Restrict user to enter numeric value in textbox using javascript

Why Restrict Input?

Restricting a textbox to numeric-only input improves data quality and avoids extra validation work later, e.g. for phone numbers or quantity fields.

Using the oninput / onkeypress Event

<input type="text" onkeypress="return isNumberKey(event)" />

<script>
function isNumberKey(evt) {
    let charCode = evt.which ? evt.which : evt.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        return false;
    }
    return true;
}
</script>

Alternative: Using a Regular Expression

input.addEventListener("input", function() {
    this.value = this.value.replace(/[^0-9]/g, "");
});

Ready to master real-world JavaScript development?

Learn JavaScript hands-on with mentor-led, live sessions.

Explore Course