Formularfelder mit bedingter Logik ein- oder ausblenden
Verwenden Sie bedingte Logik, um ein Formularfeld abhängig davon ein- oder auszublenden, wie ein Besucher ein anderes Feld beantwortet. In diesem Leitfaden erfahren Sie, wie Sie Bedingungen einrichten, welche Operatoren die einzelnen Feldtypen unterstützen und was mit ausgeblendeten Feldern geschieht, wenn ein Besucher das Formular absendet.
Bedingte Logik ist in jedem Formular von Jetpack verfügbar.
Funktionsweise der bedingten Logik
Bedingte Logik (auch als bedingte Felder oder Regeln zum Ein- und Ausblenden bezeichnet) ermöglicht es, anhand der Antwort in einem Feld zu bestimmen, ob ein anderes Feld in Ihrem Formular angezeigt wird. Beispielsweise kann ein Formular zur Buchung eines Fotoshootings nur dann nach dem Hochzeitsdatum fragen, wenn der Besucher „Hochzeit“ als Art des Shootings auswählt.
Jede Regel gehört zu dem Feld, das sie steuert:
- Ein Feld mit der Einstellung Dieses Feld anzeigen wird ausgeblendet, bis seine Bedingungen erfüllt sind.
- Ein Feld mit der Einstellung Dieses Feld ausblenden ist sichtbar, bis seine Bedingungen erfüllt sind.
- Ein Feld ohne Bedingungen ist immer sichtbar.
Felder werden ein- oder ausgeblendet, sobald der Besucher eine Antwort ändert. Die Seite wird nicht neu geladen.
Bedingte Logik zu einem Feld hinzufügen
So blenden Sie ein Feld abhängig von der Antwort in einem anderen Feld ein oder aus:
- Öffnen Sie den Beitrag oder die Seite mit Ihrem Formular oder öffnen Sie das Formular über Jetpack → Formulare.
- Wählen Sie das Feld aus, das Sie ein- oder ausblenden möchten.
- Klicken Sie auf das Symbol Bedingte Logik hinzufügen (ein Auge) in der Block-Symbolleiste. Sie können auch das Panel mit der Bezeichnung Bedingte Logik in der Seitenleiste mit den Blockeinstellungen öffnen und auf Bedingungen hinzufügen.
- Wählen Sie unter Aktion, Dieses Feld anzeigen oder Dieses Feld ausblenden.
- Wählen Sie unter Wann, wenn eine beliebige Bedingung erfüllt ist aus, damit die Aktion ausgeführt wird, sobald mindestens eine Bedingung wahr ist, oder wenn alle Bedingungen erfüllt sind aus, damit sie nur ausgeführt wird, wenn jede Bedingung wahr ist.
- Wählen Sie ein Feld zur Prüfung, einen Operator und einen Wert. Bei den Feldtypen Dropdown, Einfachauswahl, Mehrfachauswahl und Bewertung wählen Sie den Wert aus den Optionen des jeweiligen Felds aus, statt ihn einzugeben.
- Um eine weitere Bedingung hinzuzufügen, klicken Sie auf Bedingung hinzufügen und wiederholen Sie Schritt 6.
- Klicken Sie auf Fertig.
- Klicken Sie auf Speichern oder Veröffentlichen, um Ihre Änderungen zu übernehmen.
Nachdem du auf „Fertig“, geklickt hast, beschreibt das Panel für Bedingte Logik die Regel in einfachen Worten. Zum Beispiel: Dieses Feld wird angezeigt, wenn eine dieser Bedingungen erfüllt ist: Welche Art von Shooting? ist „Hochzeit“. Um die Regel zu ändern, klicke auf Bedingungen bearbeiten.
Felder, die Sie mit bedingter Logik verwenden können
Jedes Formularfeld unterstützt bedingte Logik, mit Ausnahme des Bildauswahlfelds und des benutzerdefinierten Felds vom Typ HTML. Ein unterstütztes Feld kann aufgrund seiner eigenen Bedingungen ein- oder ausgeblendet werden, und die Bedingungen anderer Felder können seine Antwort prüfen. Ein Feld kann nicht seine eigene Antwort prüfen.
Jedes Feld, das von einer Bedingung geprüft wird, benötigt einen eindeutigen Namen bzw. eine eindeutige ID. Wenn zwei Felder denselben Namen bzw. dieselbe ID haben, werden sie im Bedingungsdialog als nicht verfügbar aufgeführt. Klicken Sie auf Eindeutig machen, oder geben Sie jedem Feld unter Erweitert → Name/ID in den Blockeinstellungen des Felds einen eigenen Namen bzw. eine eigene ID.
Verfügbare Operatoren für die einzelnen Feldtypen
Welche Operatoren Sie auswählen können, hängt vom Typ des geprüften Felds ab:
- Texteingabe, Name, E-Mail, Website, Telefonnummer und mehrzeiliger Text: ist, ist nicht, enthält, enthält nicht, ist leer, ist nicht leer.
- Dropdown und Einfachauswahl (Radio): ist, ist nicht, ist leer, ist nicht leer.
- Mehrfachauswahl (Checkbox): enthält, enthält nicht, ist leer, ist nicht leer.
- Zahleneingabe und Schieberegler: ist gleich, ist nicht gleich, ist größer als, ist kleiner als, ist mindestens, ist höchstens, ist leer, ist nicht leer.
- Bewertung: ist gleich, ist nicht gleich, ist größer als, ist kleiner als, ist mindestens, ist höchstens, ist leer, ist nicht leer. Die Werteliste reicht von 1 bis zur maximalen Bewertung des Felds.
- Datumsauswahl und Zeiteingabe: ist, ist nicht, liegt vor, liegt nach.
- Checkbox und Zustimmung zu den Bedingungen: ist aktiviert, ist nicht aktiviert.
- Ausgeblendetes Feld: ist, ist nicht, enthält.
- Datei-Upload: ist leer, ist nicht leer.
Wie ausgeblendete Felder das Absenden von Formularen beeinflussen
Wenn ein Besucher das Formular absendet, prüft Jetpack jede Bedingung erneut auf dem Server. Ein Feld, das zu diesem Zeitpunkt ausgeblendet ist, wird so behandelt, als wäre der Besucher nie danach gefragt worden:
- Es wird nicht validiert, daher verhindert ein ausgeblendetes Pflichtfeld das Absenden nicht.
- Die Antwort wird nicht gespeichert. Sie erscheint weder in der Antwort unter Jetpack → Formulare → Antworten, noch in der Benachrichtigungs-E-Mail oder in an Integrationen gesendeten Daten.
- Für die Bedingungen anderer Felder gilt es als leer. Wenn ein Besucher ein Feld ausfüllt und anschließend eine Antwort ändert, durch die dieses Feld ausgeblendet wird, behandeln Bedingungen, die das ausgeblendete Feld prüfen, es als nicht beantwortet.
Bedingungslogik in mehrstufigen Formularen
Bedingungen können Felder in jedem Schritt eines mehrstufigen Formulars prüfen. Die Liste „Feld“ gruppiert Felder nach Schritten. Prüfe Felder im selben oder in einem früheren Schritt. Eine Bedingung, die ein Feld in einem späteren Schritt prüft, vergleicht es mit einem leeren Wert, weil der Besucher dieses Feld noch nicht beantwortet hat.
Wenn Bedingungen nicht angewendet werden
- Wenn Sie ein Feld löschen, das von einer Bedingung geprüft wird, wird diese Bedingung ignoriert. Wenn jede Bedingung für ein Feld ignoriert wird, ist das Feld immer sichtbar. Der Bedingungsdialog zeigt „Das referenzierte Feld ist nicht mehr vorhanden“ an, damit Sie ein anderes Feld auswählen oder die Bedingung entfernen können.