我有一个xml:
<a>
Anna
<b>Tom<b>
</a>
因此元素<a>
有两个孩子:
Anna
:文字文字节点<b>Tom<b>
:文字节点所以我假设当我写count(a/*)
时,它应该给我2。
但我得到了1。
为什么文本节点&#39; Anna&#39;不被考虑?
当我使用<xsl:for-each select="a/*">
时,类似的事情发生了,我只得到一次迭代。
有任何解释吗?
答案 0 :(得分:3)
路径a/*
选择所有子元素,而不是所有子节点。使用a/node()
查找所有子节点。但是你应该找到其中三个,一个带有空格的文本节点,后跟Anna
后跟空格,b
元素和带有空格的文本节点。