2012-11-14 47 views
1

這適用於靜態數據:XSLT節點集上靜態還是字符串數據

<xsl:variable name="ExtensionData3"> 
<images> 
    <image id="10842" width="2450" height="2200" default="1" /> 
    <image id="10543" width="2450" height="2200" default="0" /> 
    <image id="10544" width="2450" height="2200" default="0" /> 
</images> 
</xsl:variable> 
<xsl:value-of select="msxsl:node-set($ExtensionData3)/images/image[@default='1']/@id" /> 

我如何得到這個動態數據?:

<xsl:variable name="ExtensionData3"> 
<xsl:value-of select="XMLData" /> 
</xsl:variable> 
<xsl:value-of select="msxsl:node-set($ExtensionData3)/images/image[@default='1']/@id" /> 

回答

0

是如何工作的我得到這個動態數據?:

<xsl:variable name="ExtensionData3"> 
    <xsl:value-of select="XMLData" /> 
</xsl:variable> 
<xsl:value-of select="msxsl:node-set($ExtensionData3)/images/image[@default='1']/@id" 

/>

工作

該錯誤是在這條線

<xsl:value-of select="XMLData" /> 

此輸出(創建帶有文本節點)的第一子XMLData當前節點的的字符串值。

但是你不想字符串 - 你想節點被複制。

正確的方法做,這是

<xsl:copy-of select="XMLData" /> 

更妙的是,在這種情況下,你並不需要在所有創建RTF,然後將其轉換爲一個臨時的樹 - 只需使用

<xsl:variable name="ExtensionData3" select="XMLData"/> 
相關問題