2

xsl choose 句の 2 つのパラメータを一致させる必要があるという問題があります。これを達成する方法はありますか?

例: xsl:when test= 2 つのパラメーターをチェックする必要があるため、同じ価格をチェックできますが、ordertype は低くなりません。

<xsl:choose>
    <xsl:when test="price = 10" && "OrderType='P' ">
      <td bgcolor="#ff00ff">
      <xsl:value-of select="artist"/></td>
    </xsl:when>
    <xsl:when test="price = 10">
      <td bgcolor="#cccccc">
      <xsl:value-of select="artist"/></td>
    </xsl:when>
    <xsl:otherwise>
      <td><xsl:value-of select="artist"/></td>
    </xsl:otherwise>
  </xsl:choose>
4

3 に答える 3

5
<xsl:choose>
    <xsl:when test="price = 10 and OrderType='P' ">
      <td bgcolor="#ff00ff">
      <xsl:value-of select="artist"/></td>
    </xsl:when>
    <xsl:when test="price = 10">
      <td bgcolor="#cccccc">
      <xsl:value-of select="artist"/></td>
    </xsl:when>
    <xsl:otherwise>
      <td><xsl:value-of select="artist"/></td>
    </xsl:otherwise>
  </xsl:choose>
于 2013-06-20T15:49:00.610 に答える
1

上記の私のコメントでは、「アーティスト」などを変更する将来の努力を節約するために、このようにします。choose は bgcolor のみに関連するものであり、それのみに適用する必要があります (ちなみに、otherwise 条件を排除します):

    <td>
        <xsl:attribute name="bgcolor">
            <xsl:choose>
                <xsl:when test="price = 10 and OrderType='P' ">
                    <xsl:text>#ff00ff</xsl:text>
                </xsl:when>
                <xsl:when test="price = 10">
                    <xsl:text>#cccccc</xsl:text>
                </xsl:when>
            </xsl:choose>
        </xsl:attribute>
        <xsl:value-of select="artist"/>
    </td>
于 2013-06-20T22:55:15.117 に答える