क्या आप एक xslt परीक्षण विशेषता में दो शर्तें रख सकते हैं?


जवाबों:


211

काफी नहीं, और निचले मामले में होना चाहिए।

<xsl:when test="4 &lt; 5 and 1 &lt; 2">
<!-- do something -->
</xsl:when>

33

इसे एक <xsl: लिपटे> में लिपटना पड़ता है क्योंकि यह एक समय है। और "और" को कम करें।

<xsl:choose>
   <xsl:when test="4 &lt; 5 and 1 &lt; 2" >
   <!-- do something -->
   </xsl:when>
   <xsl:otherwise>
   <!-- do something else -->
   </xsl:otherwise>
</xsl:choose>

6

से XML.com :

Xsl की तरह: यदि निर्देश, xsl: जब तत्वों में उनके प्रारंभ और अंत-टैग के बीच अधिक विस्तृत सामग्री हो सकती है - उदाहरण के लिए, शाब्दिक परिणाम तत्व, xsl: तत्व तत्व, या यहां तक ​​कि xsl: if और xsl: तत्वों को जोड़ने के लिए चुनें परिणाम पेड़। उनके परीक्षण के भाव सभी चाल और ऑपरेटरों का उपयोग कर सकते हैं जो कि xsl: यदि तत्व की परीक्षण विशेषता अधिक जटिल बूलियन अभिव्यक्तियों का निर्माण करने के लिए जैसे और, या, और फ़ंक्शन कॉल का उपयोग कर सकती है।


5

हो सकता है कि यह xslt-professional के लिए नो-ब्रेनर हो, लेकिन मेरे लिए शुरुआती / मध्यवर्ती स्तर पर, यह मुझे हैरान कर गया। मैं बिल्कुल वैसा ही काम करना चाहता था, लेकिन मुझे सादे नंबर के बजाय एक xml से एक ज़िम्मेदार मूल्य का परीक्षण करना था। इस धागे के बाद, मैंने यह कोशिश की:

<xsl:when test="responsetime/@value &gt;= 5000 and responsetime/@value &lt;= 8999"> 

जिससे एक त्रुटि उत्पन्न हुई। यह काम:

<xsl:when test="number(responsetime/@value) &gt;= 5000 and number(responsetime/@value) &lt;= 8999">

वास्तव में समझ में नहीं आता कि यह बिना नंबर () के काम क्यों नहीं करता, हालाँकि। क्या ऐसा हो सकता है कि बिना संख्या () के मान को एक स्ट्रिंग के रूप में माना जाता है और आप एक स्ट्रिंग के साथ संख्याओं की तुलना नहीं कर सकते हैं?

वैसे भी, आशा है कि यह किसी को बहुत खोजता है ...

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.