1

item="toy" ではないすべての製品を選択する xslt テンプレート マッチを作成しようとしました。以下は私のコードですが、動作していません。エラーの原因を教えてください。

  <color>
     <xsl:apply-templates select="//product/@item[not(.='toy')]">
  </color>
4

2 に答える 2

1

XMLとXSLTには多くの問題がありますが、質問を作成したときにタイプミスがあった可能性があります。XMLにxsiの名前空間宣言がなく、 apply-templatesが一重引用符ではなく二重引用符を使用しています。また、非公開です。

ただし、実際の問題は、製品ノードを選択するために監視していると言っているのに、apply-templatesが実際に実際のアイテム属性を選択しようとしていることです。

代わりにこれを試してください

<xsl:apply-templates select="//product[not(@xsi:item='toy')]" />

または多分これ

<xsl:apply-templates select="//product[@xsi:item!='toy']" />
于 2012-10-24T09:07:21.583 に答える
1

一重引用符で試してください:

<xsl:apply-templates select="//product/@xsi:item[not(.='toy')]">
于 2012-10-24T08:41:07.013 に答える