在XSL文件中的<select>语句中选择默认值

Ste*_*eve 1 html xslt html-select

我有一个项目列表,如下面列出的项目,我试图默认选择该选项,在"listing"标签中有一个标签.

<select>
<xsl:attribute name="name"><xsl:value-of select="@id"/>_type</xsl:attribute>
<option><xsl:attribute name="value"><xsl:if test="listing/Chat"><xsl:attribute name="selected">selected</xsl:attribute></xsl:if>Chat</xsl:attribute>Chat</option>
...
Run Code Online (Sandbox Code Playgroud)

我是否放置了xsl:如果不正确?

Ben*_*ank 6

您的代码无效,因为您已将一个<xsl:attribute>标记嵌套在另一个标记内.我相信你想要的东西如下:

<select name="{@id}_type">
    <option value="Chat">
        <xsl:if test="listing/Chat">
            <xsl:attribute name="selected">selected</xsl:attribute>
        </xsl:if>

        <xsl:text>Chat</xsl:text>
    </option>
</select>
Run Code Online (Sandbox Code Playgroud)

要么

<select name="{@id}_type">
    <xsl:if test="listing/Chat">
        <option value="Chat" selected="selected">Chat</option>
    </xsl:if>
</select>
Run Code Online (Sandbox Code Playgroud)

前者始终显示"聊天"选项,但仅在满足条件时才选择它.除非符合条件,否则后者根本不显示"聊天".