Skip to main content


webforJ supports seven different types of field components, each with various behaviors and implementations that suit various needs. While each of these components have variations in their implementations, there are commonalities amongst all of the field classes that will be described here.


This section describes common functionality amongst various field components in webforJ, and is not itself a class that can be instantiated and used.

Shared Field Properties


A field label is a descriptive text or title that is associated with the field. It provides a brief explanation or prompt to help users understand the purpose or expected input for that particular field. Field labels are not only important for usability but also play a crucial role in accessibility, as they enable screen readers and assistive technologies to provide accurate information and facilitate keyboard navigation.


A field is required when the user must provide a value before submitting a form. This is mainly used in conjunction with setLabel(String) to provide a visual indication to users that the field is required.


Field components contain built-in visual validation which notifies users if a required field is empty, or has had values removed.


By calling the setSpellCheck(true) method, you can enable the spellcheck feature for a field. This means that when a user enters text into the field, the browser or user agent may check the spelling of the entered text for errors.

Parts and CSS Properties


As all field components are built from a singular web component, they will all share the following Shadow Parts and CSS Property values

Shadow Parts

These are the various parts of the shadow DOM for the component, which will be required when styling via CSS is desired.


CSS Properties

These are the various CSS properties that are used in the component, with a short description of their use.


Reflected Attributes

The reflected attributes of a component will be shown as attributes in the rendered HTML element for the component in the DOM. This means that styling can be applied using these attributes.



This component relies on the following components - see the related article for more detailed styling information: