1

要素 x があり、その要素に別の要素 y が含まれていない場合に何かをしたいとします。

<xsl:for-each select="//x">
    <xs:if test="expression to check does not contain y">

    </xs:if>
</xsl:for-each>
4

2 に答える 2

0

より良い使用

<xsl:apply-templates select = "//x[not(y)]"/>

xこれにより、要素を子として持たないすべての要素にテンプレートが適用されますy

このようにして、実行用に選択された一致するテンプレート内に条件付きロジックを指定しません。

「含む」とは、「(子だけでなく)子孫を持つ」ことを意味する場合、上記は次のように指定する必要があります

<xsl:apply-templates select = "//x[not(descendant::y)]"/>
于 2012-11-02T01:26:04.463 に答える
0
 not(y)

要素に直接の子要素 ​​y がないかどうかをテストします。

于 2012-11-02T00:33:26.257 に答える