wStringconverter::filterEmptyTags

Filtert Tags ohne Inhalt

Funktionsaufruf

String filterEmptyTags(String str, String tagName = 'p')

Parameter

str
Zeichenkette
tagName
Zu filternde Tags (ist kein Wert angegeben, werden P-Tags gefiltert)

Zeigt das Textfeld nur an, wenn es nicht leer ist (leere P-Tags werden gefiltert)

<!-- wenn der Parameter leer ist, wird automatisch nach P-Tag gefilert -->
<xsl:if test="php:functionString('wStringconverter::filterEmptyTags', wd:fragment[@id = 'text']/text()) != ''">
<div class="elementText">
<!--web:text:start editor="wysiwyg" inputStyle=""--><xsl:value-of disable-output-escaping="yes" select="wd:fragment[@id = 'text']"/><!--web:text:stop-->
</div>
</xsl:if>

<!-- mit Angabe des P-Tag -->
<xsl:if test="php:functionString('wStringconverter::filterEmptyTags', wd:fragment[@id = 'text']/text(), '') != ''">
<div class="elementText">
<!--web:text:start editor="wysiwyg" inputStyle=""--><xsl:value-of disable-output-escaping="yes" select="wd:fragment[@id = 'text']"/><!--web:text:stop-->
</div>
</xsl:if>

Zeigt das Textfeld nur an, wenn es nicht leer ist (leere Span-Tags werden gefiltert)

<xsl:if test="php:functionString('wStringconverter::filterEmptyTags', wd:fragment[@id = 'text']/text(), 'span') != ''">
<div class="elementText">
<!--web:text:start editor="wysiwyg" inputStyle=""--><xsl:value-of disable-output-escaping="yes" select="wd:fragment[@id = 'text']"/><!--web:text:stop-->
</div>
</xsl:if>

Zeigt das Textfeld nur an, wenn es nicht leer ist (leere P-Tags werden gefiltert)

<wsl:php>
  $elementName = "<xsl:value-of select="php:functionString('wStringconverter::filterEmptyTags', wd:group/wd:item[1]/wd:fragment[@id = 'name']/text())"/>"; 
  // ...
  print $formular-&gt;elements[$elementName]-&gt;renderLabel(); 
  // ...
</wsl:php>

Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden.

 
FAQs
Was macht wStringconverter::filterEmptyTags?
<code class="codeInline">wStringconverter::filterEmptyTags</code> filtert Tags ohne Inhalt. Leere Tags werden damit nicht weiter angezeigt (z. B. kein Ausgeben des Textfelds für leere Elemente).
Wie wird die Funktion aufgerufen?
<code class="codeInline">filterEmptyTags(String str, String tagName = 'p')</code>
Wofür steht der Parameter <code class="codeInline">str</code>?
<code class="codeInline">str</code> ist die Zeichenkette, die geprüft und gefiltert wird.
Wofür steht der Parameter <code class="codeInline">tagName</code> und welche Voreinstellung gibt es?
<code class="codeInline">tagName</code> bestimmt, welche Tags gefiltert werden. Wenn kein Wert angegeben wird, werden standardmäßig <code class="codeInline">p</code>-Tags gefiltert.
Was passiert, wenn <code class="codeInline">tagName</code> nicht angegeben wird?
Dann wird auf <code class="codeInline">p</code>-Tags geprüft. Das Textfeld wird nur angezeigt, wenn der entsprechende Inhalt nicht leer ist; leere <code class="codeInline">p</code>-Tags werden gefiltert.
Was passiert, wenn <code class="codeInline">tagName</code> als <code class="codeInline">span</code> angegeben wird?
Dann werden <code class="codeInline">span</code>-Tags gefiltert. Das Textfeld wird nur angezeigt, wenn der Inhalt des <code class="codeInline">span</code> nicht leer ist; leere <code class="codeInline">span</code>-Tags werden gefiltert.
Wie wird die Funktion typischerweise eingesetzt, um eine Ausgabe zu steuern?
Die Funktion wird in einer Bedingung genutzt, sodass das Textfeld nur dann gerendert wird, wenn das Ergebnis nicht leer ist (z. B. innerhalb eines XSL-<code class="codeInline">if</code>-Tests oder entsprechend in einer PHP-/Template-Integration).
Gibt es Hinweise zur Einbindung von Framework-Funktionen in eigenen Skripten?
Ja. Wenn Sie eine Funktion innerhalb einer Weblication® Seite z. B. über ein PHP-Quelltext-Element oder in einem XSL-Template über <code class="codeInline">wsl:php</code> einbinden, muss das Framework über <code class="codeInline">grid.php</code> nicht mehr referenziert werden.