2011-08-18 73 views
2

我正在使用XSLT來顯示XML中的節點。此節點包含一個HTML無序列表如下:XSLT返回文本值僅文本

<ul><li>one</li><li>two</li></ul>

<xsl:value-of select="root/node1" disable-output-escaping="yes" />只返回onetwo

我知道我需要使用disable-output-escaping="yes"但這並沒有什麼。

我所要的輸出是一樣的節點,就像這樣: <ul><li>one</li><li>two</li></ul>

+0

你在'select'屬性中選擇了什麼?你想從它輸出什麼? – Yuck

回答

1

xsl:value-of用於通過評估所選節點的字符串值來創建文本節點。您需要使用xsl:copy-of

http://www.w3.org/TR/xslt#value-of

xsl:value-of元件被實例化以在結果樹文本節點 。所需的select屬性是一個表達式; 評估此表達式,並將生成的對象轉換爲字符串,就像調用string函數一樣。字符串 指定了創建的文本節點的字符串值。如果字符串爲 爲空,則不會創建文本節點。創建的文本節點將與任何相鄰文本節點合併爲 。

xsl:copy-of元素可用於將節點集複製到 結果樹而不將其轉換爲字符串。見[11.3 Using Values of Variables and Parameters with xsl:copy-of]。