如何从XSLT中的子节点读取父节点的属性
问题描述:
只想知道如何从XSLT中的子节点读取父节点的属性。 代码:如何从XSLT中的子节点读取父节点的属性
<A>
<b attr1="xx">
<c>
</c>
</b>
</A>
XSLT:
<xsl:template match="c">
<xsl:value-of select="attribute of b node">
</xsl:template>
答
您可以使用 “..
” 走出去 “上升” 的水平。所以:
<xsl:value-of select="../@attr1"/>
耶刚刚编码// @ attr1,它为我工作...无论如何感谢您的帮助。 – Wondering 2009-09-11 08:54:20
@Wondering - 表达式“// @ attr1”将扫描整个文档(即使找到第一个匹配项也不会停止)。这是非常低效的,并可能抓住错误的@ attr1(如果你在其他地方有这个属性)。 @Adam Batkin的解决方案更有效,不太可能意外地选择了错误的值。 – 2009-09-11 11:05:53
@Mads:感谢您的输入和信息,将实施相同 – Wondering 2009-09-14 07:50:40