如何从XSLT中的子节点读取父节点的属性

时间:2014-11-25 14:15:14

标签: xslt xpath

只想知道如何从XSLT中的子节点(c)读取父节点(A)的属性。代码:

<A attr1="xx">
  <b>
    <c>
    </c>
  </b>
</A>

XSLT:

<xsl:template match="c">
  <xsl:value-of select="attribute of A node">
</xsl:template>

1 个答案:

答案 0 :(得分:3)

A实际上不是c的父级,而是祖先(b是父级!),但您要查找的代码是

<xsl:value-of select="ancestor::A/@attr1">

(如果案件ancestor是[{1}}的直接父母),您可以将parent替换为A

你也可以这样做:

c

但这会假设<xsl:value-of select="../../@attr1"> 始终是&#39; grand-parent`(即父母的父母)。