2013-06-27 99 views
0

一個元件的第一次出現我喜歡處理僅在XSLT

<A> 
<B> 
    <C>90</C> 
    <D>var 1</D> 
</B> 
<B> 
    <C>90</C> 
    <D>var 2</D> 
</B> 
<B> 
    <C>90</C> 
    <D>var 3</D> 
</B> 
</A> 

我需要顯示的元素「C」只有一次的值(如由第三方和元件所生成的XML是一個XML 「C」在B的每個節點都得到重複。方法不正確,但我可以不做任何事情)。

現在,當我得到C值(使用下面)時,它給我的值爲「909090」,而我只需要「90」。如何去呢?如果以某種方式,我可以得到列表大小,然後將結果字符串的長度 與子字符串的長度相除。但如何獲得名單長度。

<fo:table-row> 
<fo:table-cell> 
    <fo:block-container> 
     <fo:block>C :: </fo:block> 
    </fo:block-container> 
</fo:table-cell> 
<fo:table-cell> 
    <fo:block-container> 
     <fo:block> 
      <xsl:apply-templates select="A/B/C"/> 
     </fo:block> 
    </fo:block-container> 
</fo:table-cell> 
</fo:table-row> 
+0

啊,你只希望第一個「90」...很難試圖解決這個問題。 –

回答

2

那麼你可以隨時使用<xsl:apply-templates select="(A/B/C)[1]"/>僅處理第一C元素。

+0

thanx很多..工作像魅力...簡單的解決方案... – advaita