3

次のXMLが与えられます:

<Root>
  <NodeA>
    <ChildNodeA/>
    <ChildNodeB/>
  </NodeA>
  <NodeB>
    <ChildNodeB/>
  </NodeB>
  <NodeC>
  </NodeC>
</Root>

特定の要素を含む特定のノードの最初の先行するSiblilngを見つけるにはどうすればよいですか。

IE「NodeC」にいる場合、「ChildNodeA」(この例では「NodeA」)を持つ最初の兄弟を見つけるにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

4

子要素を含む最初の先行する兄弟を見つけることは非常に簡単であり、実際にそれを説明する方法と厳密に一致します。

<xsl:apply-templates select="preceding-sibling::*[ChildNodeA][1]" />

あなたがNodeCに配置されていると仮定すると、これは実際にあなたの場合にあなたのNodeAを返します

<NodeA>
  <ChildNodeA></ChildNodeA>
  <ChildNodeB></ChildNodeB>
</NodeA>
于 2012-10-11T10:24:30.743 に答える