<root>
<A>
...
</A>
<A1>Text</A1>
<A1>Text</A1>
<B1>Text</B1>
<C1>Text</C1>
<A>
..
</A>
<A1>Text</A1>
在上面的例子中,我想选择第一个A的所有兄弟姐妹是A1。如果我把&#34; follow-sibling :: * [self :: A]&#34;然后它将只选择第一个A1。但是我想选择所有A1后跟A的A1。没有规则像B1标签将在A1之后。任何标签都可以在A1之后。 请帮助解决这个问题。
答案 0 :(得分:0)
如果我输入“follow-sibling :: * [self :: A]”,那么它只会选择 第一个A1。
我认为你的意思是:
following-sibling::*[self::A1]
可以简单地写成:
following-sibling::A1
此将选择跟随上下文节点的兄弟节点的所有 A1
个节点。您可能认为它只选择第一个因为您使用select
语句的方式。例如,在XSLT 1.0中的指令:
<xsl:value-of select="following-sibling::A1"/>
将返回所选集合中第一个A1
节点的值。