So prüfen Sie leere Formular Textfelder

Dieser Artikel beschreibt, wie Sie innerhalb eines Formulares bzw. einer Seite ein Textfeld auf Inhalt prüfen.

Beim Einsatz eines Formulares mit Textfeldern innerhalb des Formulares können Sie diese Textfelder auf Inhalt prüfen. Das macht z.B. dann Sinn, wenn Sie dem Benutzer innerhalb der Bearbeitung die Möglichkeit geben wollen, Zusatzinformationen über ein Textfeld angeben zu können. Sofern allerdings im Textfeld nichts eingetragen ist, soll auch kein Textfeld im generierten Formular ausgegeben werden.
Hierzu prüfen Sie das Textfeld in der Ausgabe auf Inhalt (also auch leere Tags (z.B. wenn nur ein BR-Tag (Zeilenumbruch) gesetzt ist) und geben das Feld nur aus, wenn dies mit Inhalt versehen ist.

Beispiel: Auszug aus formular.generator.wItem.php mit Textfeld

...
<xsl:when test="@type = 'formular.element.formText'">
   <xsl:if test="php:functionString('wStringconverter::filterEmptyTags', wd:fragment[@id = 'text']/text()) != ''">
     <dd><div style="{wd:fragment[@id = 'style']/text()}"><wsl:php>print $formular-&gt;elements["<xsl:value-of select="php:functionString('wStringconverter::maskQuotes', wd:fragment[@id = 'name']/text())"/>"]-&gt;renderElement();</wsl:php></div></dd>
   </xsl:if>
</xsl:when>
...

Über das oben definierte Strukturelement (XSL) wird ein Textfeld, wie Sie es nachfolgend innerhalb eines Formulares finden (im Beispiel: Zusatzinformationen), nicht in der Webseite ausgegeben. Dies können Sie natürlich auch unabhängig von einem Formular und "normalen" Seiten einsetzen.

Auszug aus einem Formular mit Textfeld