2012-06-08 7 views
7

मेरी स्थिति यह है कि परीक्षण कैसे करें;क्या आईएफ स्टेटमेंट एक्सएसएलटी में अनुमति देता है या शर्त है?

<xsl:if test="node = '1' or node='2'"> 
<input name="list_{@id}" value="{@id}" type="checkbox"/> 
</xsl:if> 

क्या आईएफ कथन की अनुमति है या शर्त? कृपया सलाह दें ..

उत्तर

6

क्या आईएफ कथन की अनुमति है या शर्त?

नहीं, लेकिन XPath में or ऑपरेटर है - ध्यान दें कि XPath केस-संवेदी भाषा है।

प्रदान की कोड में XPath अभिव्यक्ति:

node = '1' or node='2' 

वाक्य रचना सही है।

orstandard XPath operator है और दो उप-संपीड़न को गठबंधन करने के लिए उपयोग किया जा सकता है।

[33] ऑपरेटरनाम :: = 'और' | 'या' | 'मॉड' |

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output omit-xml-declaration="yes" indent="yes"/> 
<xsl:strip-space elements="*"/> 

<xsl:template match="node()|@*"> 
    <xsl:copy> 
    <xsl:apply-templates select="node()|@*"/> 
    </xsl:copy> 
</xsl:template> 

<xsl:template match="num[ . = 3 or . = 5]"/> 
</xsl:stylesheet> 

इस बदलाव निम्नलिखित XML दस्तावेज़ पर लागू किया जाता है:

<nums> 
    <num>01</num> 
    <num>02</num> 
    <num>03</num> 
    <num>04</num> 
    <num>05</num> 
    <num>06</num> 
    <num>07</num> 
    <num>08</num> 
    <num>09</num> 
    <num>10</num> 
</nums> 

चाहता था, सही परिणाम 'div'

यहां एक संपूर्ण XSLT परिवर्तन उदाहरण है उत्पादित किया गया है (<num>03</num> और <num>05</num> के अपवाद के साथ कॉपी किए गए सभी तत्व:

<nums> 
    <num>01</num> 
    <num>02</num> 
    <num>04</num> 
    <num>06</num> 
    <num>07</num> 
    <num>08</num> 
    <num>09</num> 
    <num>10</num> 
</nums> 
1

आप अपने उदाहरण में इस्तेमाल कर सकते हैं या जैसे ही आप कर सकते हैं। Here एक्सएसएलटी में समर्थित ऑपरेटरों हैं।

+0

ओलेक्सी: XPath भाषा के ऑपरेटरों संबंधित डब्ल्यू 3 सी विनिर्देश में हैं - यह XPath के लिए एकमात्र * मानक * दस्तावेज़ है। ** w3schools के संदर्भ को पोस्ट करना अनुचित है और वास्तव में ओपी ** को एक बुरी सलाह है। W3schools की भरोसेमंदता के बारे में और पढ़ें: http://w3fools.com/ –

+0

लिंक अब 404 करता है। – dummy

संबंधित मुद्दे