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
 not(y)

测试元素是否没有直接子元素 y。

于 2012-11-02T00:33:26.257 回答
0

更好的使用

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

这会将模板应用于没有子元素的任何x元素y

通过这种方式,您无需在选择执行的匹配模板中指定任何条件逻辑。

如果“包含”是指“有后代(不仅是孩子),那么上述内容应指定为

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