對不起,我不能讓我的頭圍繞這一點:如何在XSLT中獲取變量到元素名稱?
有沒有辦法把這個...
<xsl:value-of select="concat('name-', $language)" />
...這個:
<xsl:value-of select="name-en" />
?
感謝您的幫助!
對不起,我不能讓我的頭圍繞這一點:如何在XSLT中獲取變量到元素名稱?
有沒有辦法把這個...
<xsl:value-of select="concat('name-', $language)" />
...這個:
<xsl:value-of select="name-en" />
?
感謝您的幫助!
<xsl:value-of select='*[name() = concat("name-", $language)]' />
試試這個
<xsl:variable name="name-en" select="concat('name-', $language)">
</xsl:variable>
我假設你其實是要達到相當於...
<xsl:value-of select="'name-en'" />
(注意周圍'引號name-en')。如果這不是你的意圖,那麼請 讓我知道。
只需設置$語言變量「恩」的價值,像這樣......
<xsl:variable name="language" select="'en'" />
順便說一句,如果你正在使用XSLT 2.0,而不是1.0,可以縮寫.. 。
<xsl:value-of select="concat('name-', $language)" />
...成....
<xsl:value-of select="'name-', $language" />
尼斯一個!
由標題就判斷:
如何獲得一個變量進入XSLT元素名?
答案是:
<xsl:element name="{$theVariable}"/>
這生成的元素,其名稱是$theVariable
變量的值。
在特定情況下使用:
<xsl:element name="name-{$language}"/>
說明:
正確使用<xsl:element>
和AVT(屬性值模板)。
但我懷疑所需的元素名稱是輸入中的元素,而不是輸出中的元素。 – 2012-07-09 13:19:12
@MichaelKay:標題說:...將一個變量*變成*一個元素名稱。 – 2012-07-09 13:21:26
是的,邁克爾是對的。但是,無論如何感謝Dimitre! – Tintin81 2012-07-09 14:28:12
您是否想要輸出文字字符串'name-en'?或者名稱爲的元素的值? –
2012-07-09 12:51:55