【发布时间】:2018-06-09 11:31:48
【问题描述】:
我有以下检查 xml 中的字符串...但是,我需要创建另一个测试来检查变量 $validItems 在第一行中是否存在“空”或没有文本...
<xsl:if test="$validItems[(Caption | CalltoAction)[string(.)]]">
<div class="text">
<xsl:choose>
<xsl:when test="$horizontal">
<div class="holder">
<div class="frame">
<div class="slides-descriptions">
<xsl:apply-templates select="$validItems" mode="horizontal"/>
</div>
<div class="switcher"/>
</div>
</div>
</xsl:when>
<xsl:otherwise>
<div class="slides-descriptions">
<xsl:apply-templates select="$validItems" mode="vertical"/>
</div>
<div class="switcher"/>
</xsl:otherwise>
</xsl:choose>
</div>
</xsl:if>
我将如何测试变量 xsl:if test=$validItems?
【问题讨论】:
-
您尝试过
xsl:if test="not($validItems)"或阅读w3.org/TR/xpath/#section-Boolean-Functions 吗? -
不清楚你想做什么。 “另一个检查变量 $validItems 中是否存在 'Null' 或无文本的测试” - 您是否要检查
$validItems中的 any 元素是否有Caption或CalltoAction子元素其文本值为空字符串的元素?顺便说一句,XSLT 中并没有真正的“null”之类的东西,只是空字符串/节点集/序列。 -
我想在 $validItems 中查找 Caption|CalltoAction 中没有文本。如果没有找到文本,我需要
条件。我只是在寻找字符串中没有文本时如何过滤。