Documentation

Documentation versions (currently viewingVaadin 23)

Number Field

Number Field sports many of the same features as Text Field, but only accepts numeric input.

The input can be decimal, integer or big decimal.

You can specify a unit as a prefix or suffix for the field.

Open in a
new tab
<vaadin-number-field label="Balance" value="200">
  <div slot="prefix">$</div>
</vaadin-number-field>

<vaadin-number-field label="Balance" value="200">
  <div slot="suffix"></div>
</vaadin-number-field>

Common Input Field Features

Number Field includes all Text Field and shared input field features.

Stepper Controls

Stepper controls allow the user to quickly make small adjustments.

Open in a
new tab
<vaadin-integer-field value="2" has-controls min="0" max="9"></vaadin-integer-field>

Minimum and Maximum Value

The valid input range of a Number Field can be set by defining minimum and maximum values.

You can set the Helper text to give information about the range.

Open in a
new tab
<vaadin-integer-field
  label="Quantity"
  helper-text="Max 10 items"
  min="0"
  max="10"
  value="2"
  has-controls
></vaadin-integer-field>

Step

The step value of a Number Field defines the allowed numeric intervals.

It specifies the amount by which the value increases/decreases when using the Up/Down arrow keys or the stepper controls.

It also invalidates the field if the value entered does not align with the specified step.

Open in a
new tab
<vaadin-number-field
  label="Duration (hours)"
  step="0.5"
  value="12.5"
  has-controls
></vaadin-number-field>

Number Type Variants

Integer Field

To allow only integers to be entered, you can use the Integer Field:

Open in a
new tab
<vaadin-integer-field label="X" value="-1284"></vaadin-integer-field>

<vaadin-integer-field label="Y" value="3910"></vaadin-integer-field>

BigDecimal Field

Java developers who need to support the BigDecimal type can use Big Decimal Field:

Open in a
new tab
BigDecimalField bigDecimalField = new BigDecimalField();
bigDecimalField.setLabel("Result");
bigDecimalField.setWidth("240px");
bigDecimalField.setValue(new BigDecimal("948205817.472950487"));
add(bigDecimalField);

Best Practices

Number Field should be used for actual number values, such as counts and measures. Do not use it for other digit-based values, such as telephone, credit card, and social security numbers. These values can have leading zeros and be greater than Number Field’s maximum supported value.

When applicable, set the most common choice as the default value. For example, airline, bus, train and other travel companies typically default the number of passengers to 1.

69FAE707-4778-4093-8FB9-8BAE22E9D7F6