使用xslt 1显示X个节点



我有一些xml看起来像这样:

<myGroup>
   <something>Stuff</something>
   <anotherThing>More Stuff</anotherThing>
   <thisThing></thisThing>
   <andAnother>Good stuff</andAnother>
   <howAboutThis></howAboutThis>
   <andOneMore>Tell me the good things</andOneMore>
   <lastOne>That come into your mind about your mother</lastOne
<myGroup>

myGroup实际上包含更多的节点,但我只对特定的一个感兴趣。我要做的是检查它们是否为空,如果不是则显示它们。这样的:

<xsl:if test="something != ''">
    <xsl:value-of select="something" />
</xsl:if>
<xsl:if test="anotherThing != ''">
    <xsl:value-of select="anotherThing" />
</xsl:if>

我要做的是停止显示,一旦我有3个非空节点。谢谢。

将条件放入谓词中:

<xsl:template match="myGroup">
  <xsl:apply-templates select="(something | anotherthing | howAboutThis | lastOne)[normalize-space()][position() &lt; 4]"/>
</xsl:template>
<xsl:template match="myGroup/*">
  <xsl:value-of select="."/>
</xsl:template>

相关内容

  • 没有找到相关文章

最新更新