2

兄弟要素が持つ子ノードの数を数えられるようにする必要があります。次のアンカー タグに子ノードがあるかどうかに基づいて、アンカー タグの CSS クラスを「no_border」に変更する必要があります。

私がこれまでに持っているのは次のようなものです:

<xsl:for-each select="Menu/Item">
  <li>
    <a>
      <xsl:attribute name="class">
        <xsl:if test="following-sibling::Item/count(Menu/Item)">
          no_border
        </xsl:if>
      </xsl:attribute>
      <xsl:value-of select="ItemTitle />
    </a>
   </li>
</xsl:for-each>

Visual Studioは私に言っています:

エラー 1 式の末尾が予期されていましたが、'(' が見つかりました。 \プロジェクト* *\

「following-sibling」の後に「count()」コマンドを入れることができないようです。

XML のサンプルを次に示します。

<root>
  <Item>
    <Menu>
      <Item>
      ... other sub-nodes
      </Item>
    </Menu>
  </Item>
  <Item>
    <Menu>
      <Item>
      ... other sub-nodes
      </Item>
    </Menu>
  </Item>
</root>

編集:私は解決策を見つけました:

<xsl:if test="count(following-sibling::Item/Menu/Item) = 0" >
4

0 に答える 0