Instruções condicionais XSLT
-
29-09-2020 - |
Pergunta
Eu tenho uma lista simples com 3 colunas:Título, URL, Cor.A coluna Cor é uma coluna de escolha com duas opções:amarelo ou verde claro.Estou usando a Web Part de exibição de lista XSLT.
Estou tentando criar um arquivo xslt com 1 instrução condicional.Em termos simples, se o valor do item na coluna color=yellow formate o em fundo amarelo;caso contrário, formate-o em fundo verde claro.Estou tendo problemas com a expressão para xsl:when
Aqui está o modelo que estou usando para os itens:
<xsl:template match="Item">
<div class="item" style="background-color:lightgreen">
<xsl:attribute name="onclick">
window.location = '<xsl:value-of select="URL"/>'
</xsl:attribute>
<span class='title'><marquee direction="left" behavior="scroll"><xsl:value-of select="Title"/></marquee></span>
</div>
</xsl:template>
Então, estou lutando para fazer com que o arquivo escolha entre o acima e o seguinte:
<div class="item" style="background-color:lightgreen">
<xsl:attribute name="onclick">
window.location = '<xsl:value-of select="URL"/>'
</xsl:attribute>
<span class='title'><marquee direction="left" behavior="scroll"><xsl:value-of select="Title"/></marquee></span>
</div>
Qualquer sugestão será apreciada.Talvez haja uma maneira mais simples de fazer isso.Eu sou novo no XSLT
Solução
Você já pensou em fazer o seguinte:
<xsl:choose>
<xsl:when test="color='yellow'">
<xsl:attribute name="style">background-color:yellow</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="style">background-color:lightgreen</xsl:attribute>
</xsl:otherwise>
</xsl:choose>
Você adicionaria esse trecho logo abaixo do arquivo opening .