2015-05-13 58 views
-1

XML:XSLT輸出的兩個XML元素(同名)

<bookstore> 
    <book isbn="49314" year="2000" edition="6"> 
    <author firstname="Carole" lastname="Wade" /> 
    <author firstname="Carol" lastname="Tavris" /> 
    <publisher>Prentice Hall</publisher> 
    <price currency="CAN">110.00</price> 
    </book> 

XSLT:

<xsl:template match="/"> 
     <html> 
      <body> 
       <xsl:for-each select="bookstore/book"> 
        Author(s): 
        <p>Publisher: <xsl:value-of select="publisher"/></p> 
       </xsl:for-each> 
      </body> 
     </html> 
    </xsl:template> 
</xsl:stylesheet> 

我如何可以顯示兩個authors'names這樣的格式:

作者(S) :Carole,Wade Carol,Tavris

完整的外觀將會是:

本書的名字:心理學

說明:入門級中心理課本

課程適用性:PSYC1101

作者://不能弄明白

出版商:Prentice Hall出版社

價格:110.00

類別:Pschology

副本庫存:10

請幫忙,謝謝!

回答

0

下輸出的作者,用空格隔開,它們中的每「姓」:

<p> 
    <xsl:text>Author(s): </xsl:text> 
    <xsl:value-of select="author!concat(@firstname, ', ', @lastname)" 
       separator=" "/> 
</p> 

如果你不使用XSLT 3.0,您必須使用對author元素xsl:for-each,而不是使用!運算符。那麼,以及在「作者:」的末尾配置s以及其中的幾個作爲練習;-)

1

對於作者''標記的每個循環都使用xslt,它將從xml中獲取多個(全部)作者信息

+0

我不太確定如何對其進行編碼。你能告訴我一個例子嗎?謝謝 – DarrenX

相關問題