我有下面的XML过滤节点()
<Categories>
<cat>Video</cat>
<cat>Audio</cat>
<cat>Hybrid</cat>
</Categories>
在我的XSL,我想过滤“音频”和节点的其余部分传递给调用模板,这需要节点作为一个的参数。如何实现这一点。
我试了下面,但没有运气。
尝试1:
<xsl:call-template name='xx'>
<xsl:with-param name='nodes' select="/Categories/cat[text()='Hybrid' or 'Video']"/>
</xsl:call-template>
尝试2:
<xsl:call-template name='xx'>
<xsl:with-param name='nodes' select="/Categories/cat[text()='Hybrid' or text()='Video']"/>
</xsl:call-template>
尝试3:
<xsl:call-template name='xx'>
<xsl:with-param name='nodes' select="/Categories/cat[contains(text(),'Hybrid,Video']"/>
</xsl:call-template>
它的工作原理,如果我只是一个值象下面
<xsl:call-template name='xx'>
<xsl:with-param name='nodes' select="/Categories/cat[text()='Video']"/>
</xsl:call-template>
提前致谢。
/Categories/cat [text()='Hybrid'或text()='Video'],表达式不起作用。同时,我不能使用/Categories/cat[.!='Audio'],因为我有多个值需要被抑制。 – satish 2011-01-14 17:55:54