我试着编写一个xslt模板匹配,它将选择所有不是item =“toy”的产品。不是我的代码,但它不起作用我能知道可能是什么错误吗?
<color>
<xsl:apply-templates select="//product/@item[not(.='toy')]">
</color>
答案 0 :(得分:1)
尝试使用单引号:
<xsl:apply-templates select="//product/@xsi:item[not(.='toy')]">
答案 1 :(得分:1)
您的XML和XSLT存在许多问题,但在创建问题时可能会出现错误。您的XML缺少 xsi 的命名空间声明,而您的apply-templates使用的是双引号而不是单引号。它也是未公开的。
但是,真正的问题是,您说要注意选择产品节点,但您的应用模板实际上是在尝试选择实际的项属性。< / p>
试试这个
<xsl:apply-templates select="//product[not(@xsi:item='toy')]" />
或许这个
<xsl:apply-templates select="//product[@xsi:item!='toy']" />