這是正確的當4 < 5和1 < 2?你可以在xslt測試屬性中添加兩個條件嗎?
<xsl:when test="4 < 5 AND 1 < 2" >
<!-- do something -->
</xsl:when>
這是正確的當4 < 5和1 < 2?你可以在xslt測試屬性中添加兩個條件嗎?
<xsl:when test="4 < 5 AND 1 < 2" >
<!-- do something -->
</xsl:when>
不完全是,AND必須是小寫。
<xsl:when test="4 < 5 and 1 < 2">
<!-- do something -->
</xsl:when>
從XML.com:
像XSL:如果說明,XSL:當 元素可以有自己的起點和終點 標籤,例如,文字結果 元素之間更復雜的 內容,xsl:element elements或 甚至xsl:if和xsl:選擇元素 - 將 添加到結果樹中。他們的測試 表達式也可以使用所有 技巧和運營商的XSL:如果 元素的測試屬性可以使用,例如 如與,或,和函數調用,以 建立更復雜的布爾表達式 。
它必須被包裹在一個<的xsl:選擇>因爲它是一個時。小寫的「和」。
<xsl:choose>
<xsl:when test="4 < 5 and 1 < 2" >
<!-- do something -->
</xsl:when>
<xsl:otherwise>
<!-- do something else -->
</xsl:otherwise>
</xsl:choose>
也許這是一個沒有腦子的XSLT的專業,但對我來說,在初級/中級水平,這讓我感到困惑。我想要做同樣的事情,但我必須從xml而不是普通數字測試響應時間值。繼這個帖子之後,我嘗試了這個:
<xsl:when test="responsetime/@value >= 5000 and responsetime/@value <= 8999">
它產生了一個錯誤。這工作:
<xsl:when test="number(responsetime/@value) >= 5000 and number(responsetime/@value) <= 8999">
不真的明白爲什麼它不工作沒有數字(),但是。難道沒有數字()的值被視爲一個字符串,你不能比較數字與字符串?
無論如何,希望這樣可以節省別人很多搜索的...
符和優先級:https://msdn.microsoft.com/en-us/library/ms256081(VS.85).aspx – Dan 2016-12-20 14:46:28