Class NativeLabel

All Implemented Interfaces:
AttachNotifier, DetachNotifier, HasComponents, HasElement, HasEnabled, HasSize, HasStyle, HasText, Serializable

@Tag("label") public class NativeLabel extends HtmlContainer
Component for a <label> element, which represents a caption for an input field in a user interface.

Note that Label components are not meant for loose text in the page - they should be coupled with another component by using the setFor(Component) or by adding them to it with the HasComponents.add(Component...) method.

Clicking on a label automatically transfers the focus to the associated component. This is especially helpful when building forms with Inputs.

For adding texts to the page without linking them to other components, consider using a Span or a Div instead. If the text should be interpreted as HTML, use a Html (but remember to guard against cross-site scripting attacks).

Since:
24.1
Author:
Vaadin Ltd
See Also:
  • Constructor Details

    • NativeLabel

      public NativeLabel()
      Creates a new empty label.
    • NativeLabel

      public NativeLabel(String text)
      Creates a new label with the given text content.
      Parameters:
      text - the text content
  • Method Details

    • setFor

      public void setFor(Component forComponent)
      Sets the component that this label describes. The component (or its id) should be defined in case the described component is not an ancestor of the label.

      The provided component must have an id set. This component will still use the old id if the id of the provided component is changed after this method has been called.

      Parameters:
      forComponent - the component that this label describes, not null , must have an id
      Throws:
      IllegalArgumentException - if the provided component has no id
    • setFor

      public void setFor(String forId)
      Sets the id of the component that this label describes. The id should be defined in case the described component is not an ancestor of the label.
      Parameters:
      forId - the id of the described component, or null if there is no value
    • getFor

      public Optional<String> getFor()
      Gets the id of the component that this label describes.
      Returns:
      an optional id of the described component, or an empty optional if the attribute has not been set
      See Also: