xslt - for-each: get every 3rd item (split into 3 columns) -


मेरे पास एक्सएसएल में निम्न नोड हैं:

  & lt; foo & gt; & LT; बार & gt; 1 & lt; / बार & gt; & LT; बार & gt; 2 & lt; / बार & gt; & LT; बार & gt; 3 & lt; / बार & gt; & LT; बार & gt; 4 & lt; / बार & gt; & LT; बार & gt; 5 & lt; / बार & gt; & LT; बार & gt; 6 & lt; / बार & gt; & LT; बार & gt; 7 & lt; / बार & gt; & LT; बार & gt; 8 & lt; / बार & gt; & LT; बार & gt; 9 & lt; / बार & gt; & Lt; / foo & gt;  

और इसे निम्नलिखित HTML में बदलना चाहते हैं:

  & lt; ul class = "one" & gt; & Lt; li & gt; 1 & lt; / li & gt; & Lt; li & gt; 4 & lt; / li & gt; & Lt; li & gt; 7 & lt; / li & gt; & Lt; / ul & gt; & Lt; ul class = "two" & gt; & Lt; li & gt; 2 & lt; / li & gt; & Lt; li & gt; 5 & lt; / li & gt; & Lt; li & gt; 8 & lt; / li & gt; & Lt; / ul & gt; & Lt; ul class = "three" & gt; & Lt; li & gt; 3 & lt; / li & gt; & Lt; li & gt; 6 & lt; / li & gt; & Lt; li & gt; 9 & lt; / li & gt; & Lt; / ul & gt;  

लूप कैसे करें और प्रत्येक तीसरे आइटम को प्राप्त करने के लिए कठिन समय आ गया है, ऐसा कुछ करना चाहेंगे:

  & lt; ul class = " एक "& gt; & Lt; xsl: प्रत्येक चयन = "exlt: नोड-सेट ($ blah) / foo / बार [X1]" & gt; & Lt; li & gt; & lt; xsl: मान का चयन करें = "नोड ()" / & gt; & lt; / li & gt; & Lt; / XSL: के लिए-प्रत्येक & gt; & Lt; / ul & gt; & Lt; ul class = "two" & gt; & Lt; xsl: प्रत्येक चयन = "exlt: नोड-सेट ($ blah) / foo / बार [X2]" & gt; & Lt; li & gt; & lt; xsl: मान का चयन करें = "नोड ()" / & gt; & lt; / li & gt; & Lt; / XSL: के लिए-प्रत्येक & gt; & Lt; / ul & gt; & Lt; ul class = "three" & gt; & Lt; xsl: प्रत्येक चयन = "exlt: नोड-सेट ($ blah) / foo / बार [X3]" & gt; & Lt; li & gt; & lt; xsl: मान का चयन करें = "नोड ()" / & gt; & lt; / li & gt; & Lt; / XSL: के लिए-प्रत्येक & gt; & Lt; / ul & gt; कहां: X1 = स्थिति से शुरू होने वाला प्रत्येक तीसरा आइटम 1 एक्स 2 = स्थिति से शुरू होने वाला प्रत्येक तीसरा आइटम 2 एक्स 3 = स्थिति 3 से प्रारंभ होने वाला प्रत्येक तीसरा आइटम  

अब पिछली बार () का उपयोग करने की आवश्यकता हो सकती है, लेकिन ठीक से काम कर रहा है कि काफी नहीं मिलता है

XPath में, शर्त होगी:

  नहीं (स्थिति () 3)  

या

  स्थिति () mod 3 = 0  

मुझे नहीं लगता op: mod का उपयोग क्यों नहीं किया जा सकता है।

संपादित करें : नया प्रश्न के बारे में, बस ऑफसेट को घटाएं इसलिए:

एक्स 1:

  स्थिति () mod 3 = 1  

एक्स 2:

  स्थिति () मॉड 3 = 2  

एक्स 3:

  स्थिति () mod 3 = 0  

< मजबूत> 2 संपादित करें : अब मैं आपका प्रश्न समझता हूं।


Comments

Popular posts from this blog

google indexing -

wpf - Custom Message Box Advice -

Eclipse CDT variable colors in editor -