2009-08-05 57 views
0

因此,這裏是我當前的代碼:將一組節點作爲變量存儲在XSLT中?

<xsl:variable name="address"> 
    <xsl:value-of select="concat(/node1/node2/address.node/street, /node1/node2/address.node/city, /node1/node2/address.node/zip)" /> 
</xsl:variable> 

現在,我想縮短這個下來:

<xsl:variable name="addressNode"> 
    <xsl:value-of select="/node1/node2/address.node" /> 
</xsl:variable> 

<xsl:variable name="address"> 
    <xsl:value-of select="concat($addressNode/street, $addressNode/city, $addressNode/zip)" /> 
</xsl:variable> 

但是這不工作按預期在所有...任何人都可以點我在正確的方向?我嘗試使用copy-to來代替addressNode的值,但它仍然不起作用:(

回答

3

當您在xsl:variable中使用xsl:value時,會得到一個類型爲string的變量,而不是節點你應該使用使用XSL的選擇屬性:變量:

<xsl:variable name="addressNode" select="/node1/node2/address.node" /> 
+0

我給這個一杆,讓你知道如何去 – Polaris878 2009-08-05 14:53:16

+0

這個工作,感謝...我顯然有點新XSL :D – Polaris878 2009-08-05 14:59:06

+0

我希望我可以給你這個答案更多的代表haha – Polaris878 2009-08-05 15:13:33