đŽÂ Text field â
Die Textfeld-Komponente ermöglicht dem Nutzer Text oder numerische Werte einzugeben.
Overview â
Intro â
Die Eingabefeld-Komponente ermöglicht dem Nutzer Text oder numerische Werte einzugeben. Ăblicherweise ist das Eingabefeld auf einzeilige Texteingaben ausgerichtet. Es können jedoch mehrzeilige Eingaben oder Eingaben mit besonderer Schreibweise durch entsprechend konfigurierte Eingabefelder bereitgestellt werden. Text- bzw. alphanumerische Eingaben sind immer unformatiert, d. h. die reine Zeichenfolge wird erfasst.
Ein Eingabefeld sollte immer einen klaren Zweck haben, der als Label angezeigt wird (z.B. Name, StraĂe, PLZ, Stadt, IBAN, Telefonnummer, etc.)

Text Field
Verwendung â
| đ Do | đ Don't |
|---|---|
| Verwenden wenn: - eine Erfassung von Daten in Form von Freitext oder alphanumerischen Eingaben in Formularen erfolgt. - kurze einzeilige Daten erfasst werden mĂŒssen. | Nicht verwenden wenn: - nur ein einfacher Anzeigetext (z. B. Textblöcke, AbsĂ€tze) dargestellt werden soll. HierfĂŒr gibt es verschiedene Textformatierungen die Sinn machen können (siehe Typografie). - das Standard Eingabefeld sich in einem FlieĂtext befinden wĂŒrde (â nicht im FlieĂtext verwenden) - es eine bestimmte Anzahl an vordefinierten Optionen zur Eingabe gibt. HierfĂŒr ein Dropdown oder eine ComboBox verwenden. - eingegebene Daten angezeigt werden sollen, verwende dazu Name-Wert-Facetten. - die Eingabe vom Nutzer geregelt werden muss, verwende dazu das maskierte Eingabefeld (Utilities in der Entwicklung). - die Nutzer Daten in bestimmten Formaten wie z.B. GeldbetrĂ€ge mit Tausenderpunkten, Kreditkartennummern, IBAN oder IP Adressen eingeben sollen, verwende dazu das maskierte Eingabefeld (Utilities in der Entwicklung). - lĂ€ngere Texteingaben nötig sind, verwende dazu das mehrzeilige Eingabefeld. - Passwörter eingegeben werden sollen, verwende dazu Passwort Eingabefelder. |
Guidelines â
Anordnung & Gruppierung â
Links ausrichten (Standard) â
Die Textausrichtung innerhalb der Textfelder ist standardmĂ€Ăig linksbĂŒndig. Dadurch stehen das Label und der Wert rĂ€umlich und visuell nah beieinander, was das Erfassen der Eingabefelder fĂŒr den Nutzer erleichtert.

Standard Textfeld
Rechts ausrichten â
Zahlenwerte wie WĂ€hrungen oder MaĂeinheiten fĂŒr FlĂ€chen und Volumen wie 㥠oder Kubik Liter darstellen, mĂŒssen rechtsbĂŒndig ausgerichtet werden. Datum und Uhrzeit Werte bleiben davon unberĂŒhrt und mĂŒssen weiterhin linksbĂŒndig dargestellt werden.

Text field mit rechtsbĂŒndigem Wert
WĂ€hrungen und sonstige Einheiten â
WĂ€hrungen und Einheiten sind als Suffix umzusetzen. Damit lĂ€sst sich der Wert von der Einheit besser trennen. Dadurch werden Validierungen vereinfacht und die Eingabe fĂŒr den Nutzer ist einheitlich geregelt.
Varianten/ Typen â
Standard Text field â

Standard Text field
Mehrzeiliges Eingabefeld (Multi-line input, Text area) â

Mehrzeiliges Eingabefeld
Maskiertes Text field â
INFO
Die Maskierung erfolgt ĂŒber Format Utilities in der Entwicklung.
Maskierte Text fields regeln, was Nutzer in das Text field eingeben können. Sie erleichtern den Nutzern die Eingabe in bestimmten Formaten. Zu diesen zÀhlen z.B. GeldbetrÀge mit Tausenderpunkten, Kreditkartennummern, IBAN oder IP Adressen.

Maskiertes Textfeld
Das Mate Design System bietet folgende hĂ€ufig genutzte Utilities fĂŒr die Maskierung beim Text Field
- Numerische Werte mit Tausenderpunkten
- IBAN
- Kreditkartennummern
- Telefonnummern
- Uhrzeiten
Platzhalter Text â
Der Platzhalter-Text kann verwendet werden, um das erwartete Format an den Nutzer zu kommunizieren. Sobald ein Zeichen eingegeben wird, verschwindet der Platzhalter-Text.
Formatierung â
Die Formatierung in einem maskierten Eingabefeld erfolgt direkt wÀhrend der Eingabe.
Die Formatierung kann dynamisch auf die Werte, die eingegeben werden, reagieren. So können die Formatierungen z.B. je nach Kreditkarten-Anbieter variieren.
| Kreditkarten-Anbieter | Format |
|---|---|
| American Express | #### ###### ##### |
| VISA | #### #### #### #### |
Werte kopieren â
Werte, die aus einem maskierten Eingabefeld kopiert werden, enthalten die Formatierung.
| Wert im maskierten Eingabefeld | Wert im Zwischenspeicher |
|---|---|
| 16:54:21 | 16:54:21 |
| 1.234,56 | 1.234,56 |
Wert einfĂŒgen â
Nutzer können formatierte und unformatierte Werte in ein maskiertes Eingabefeld einfĂŒgen.
| Quelle die Nutzer kopieren | Wert im maskierten Eingabefeld, nach dem EinfĂŒgen |
|---|---|
| 4000-1234-1234-1234 | 4000 1234 1234 1234 |
| 4000123412341234 | 4000 1234 1234 1234 |
Verhalten â
Bei Klick in ein Eingabefeld, wird der Cursor in dieses gesetzt und der Nutzer kann die Eingabe beginnen. Je nach Typ des Eingabefeldes (z.B. numerische Eingabe) können bestimmte Eingaben verboten werden. So wird die HÀufigkeit von Fehleingaben verringert.
States â
Ein aktives Eingabefeld kann vom Nutzer fokussiert werden und die Eingabe kann wie gewohnt erfolgen.
Die Darstellung der States Aktiv , Disabled , Read Only , Hover und Fokus entspricht der Standarddarstellung. Siehe States .
Fehlerhaft
Eingabefelder können validiert werden. Je nach Ergebnis der Validierung wird das Eingabefeld hervorgehoben. Im Fehlerzustand erscheint die Fehlermeldung unterhalb vom Eingabefeld und das Feld wird rot hervorgehoben. Die Fehlermeldung sollte so formuliert werden, dass dem Nutzer klar ist, wie der entstandene Validierungsfehler behoben werden kann, siehe dazu auch Validierung unter Formulare .
Hilfetext
Wenn nötig, kann unterhalb des Eingabefeldes ein Hilfetext angezeigt werden. Dieser gibt dem Nutzer weitere Informationen ĂŒber die benötigte Eingabe.
Barrierefreiheit â
Tastaturbedienung â
Ăber die Tabulatortaste ("Tab") oder Hochstell- und Tabulatortaste ("Shift" + "Tab") lĂ€sst sich zwischen den einzelnen Eingabefeldern springen. In einem aktiven fokussierten Eingabefeld kann die Eingabe wie gewohnt erfolgen.
Spezifische Hinweise â
Da jedes Eingabefeld ein Label haben muss, ist kein zusÀtzliches "aria-label" nötig.
Platzhalter (Placehoder) im Eingabefeld können optional zugÀnglich gemacht werden, indem sie im aria-label Attribut angegeben werden.
Gesperrte Eingabefelder sollten standardmĂ€Ăig nicht ĂŒber die Tastatur fokussierbar sein. Erst wenn der Nutzer entsprechende Einstellungen vornimmt, sollten auch die gesperrten Eingabefelder in den Fokussierungs-Kreislauf aufgenommen werden.
Develop Vue â
Die Implementierung der Webcomponenten in Vue.js kann in folgendem Showcase innerhalb des AKDB Netzwerks betrachtet werden: https://mate-ds-vue-components-showcase-25.core-platform.kubt.akdb.net/?path=/docs/komponenten-text-field--docs
Develop Flow â
Der Showcase ist innerhalb des AKDB Netzwerks zu finden unter: https://mate-ds-flow-components-showcase-25.core-platform.kubt.akdb.net/?src=component%252FtextField
Code Examples â
Install â
Maven â
xml
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-text-field-flow</artifactId>
</dependency>Import â
java
import com.vaadin.flow.component.textfield.TextField;Variants â
Default â
java
TextField textField = new TextField();
textField.setLabel("Name");
textField.setValue("Max Mustermann");
textField.setHelperText("Vor- und Nachname eingeben");
textField.setClearButtonVisible(true);Required â
java
TextField textField = new TextField();
textField.setLabel("Pflichtfeld");
textField.setRequired(true);Disabled â
java
TextField textField = new TextField();
textField.setLabel("Inaktiv");
textField.setValue("Nicht editierbar");
textField.setEnabled(false);Read Only â
java
TextField textField = new TextField();
textField.setLabel("Nur lesen");
textField.setValue("SchreibgeschĂŒtzter Wert");
textField.setReadOnly(true);Invalid â
java
TextField textField = new TextField();
textField.setLabel("UngĂŒltig");
textField.setInvalid(true);
textField.setErrorMessage("Bitte einen gĂŒltigen Wert eingeben.");