我试图通过测试将多个类应用于属性。
这可能真的很简单,但是我不知道该怎么做。我试过将类分隔成一行,并像这样堆叠它们:
<xsl:when test="@name = 'Example' and @status = 'Example2'">
<xsl:attribute name="class">style1</xsl:attribute>
<xsl:attribute name="class">style2</xsl:attribute>
</xsl:when>
当我以此方式尝试时,它适用于第二堂课,但不适用于第一堂课。当我将两个类放在同一行中时,它根本不起作用。
想法将不胜感激!
答案 0 :(得分:0)
一个元素不能有两个具有相同名称的属性。来自XML specification:
属性名称不得在同一开始标签或空元素标签中多次出现。
答案 1 :(得分:0)
HTML“ class”属性应包含所有类的列表,并用空格分隔:
<xsl:when test="@name = 'Example' and @status = 'Example2'">
<xsl:attribute name="class">style1 style2</xsl:attribute>
</xsl:when>
如果您使用多个具有相同名称的<xsl:attribute>
,则XSLT处理器将仅使用最后一个。