XSLT:设置上一个节点的属性

时间:2009-12-21 19:29:11

标签: xslt

给出以下样本;

<ul id="s-nav">
  <xsl:for-each select="$currentPage/ancestor-or-self::node [@level=2]/node">
    <li>
      <xsl:if test="$currentPage/ancestor-or-self::node/@id = current()/@id">
        <xsl:attribute name="class">current</xsl:attribute>
      </xsl:if>
    </li>
  </xsl:for-each>
</ul>

当前节点与当前&lt; li&gt;相同时,属性类设置为“当前”。

现在我想在if块中设置第二个属性,但是对于前一个&lt; li&gt;,而不是当前。知道怎么做到这一点吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

我认为XSLT不允许您修改已经输出的节点的属性。最好的办法是将每个节点视为其输出,并确定它应具有各种属性的条件。