2010-09-02 64 views
0
<field type="math" size="12" unitText="%" unitPos="back"/> 

我可以從各自的字段中選擇「類型」和「12」,但我無法對unitText和unitPos執行相同的操作。任何想法爲什麼?XSLT和XPATH:無法讀取某些屬性

下面是我用來打印類型和大小。

<xsl:value-of select="@size"/> 

我進入 「場」 的標籤這一行

<xsl:template match="field" mode="all"> 

感謝您的任何援助。我的頭靠在牆上撞了一會兒。 :P

+0

你可能需要表現出更多的XSLT的。模板/匹配看起來很好,但只有在模式「全部」時纔會調用它。 ''是正確的,類似的代碼應該用於@unitText和@unitPos。因此,如果沒有更多的XSLT上下文,就很難猜測出現了什麼問題。 – LarsH 2010-09-02 21:19:04

+1

因爲這兩個可能有區分大小寫的問題,所以您可能需要詳細說明使用xslt轉換時使用的確切軟件。 – Wrikken 2010-09-02 21:19:31

+0

我們使用的是Struts 1.1。不確定這是你正在尋找的信息。^_^ – bobber205 2010-09-02 23:58:18

回答

0

我無法重現該問題。這個樣式表:

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output method="text"/> 
    <xsl:template match="field"> 
     <xsl:apply-templates select="@*"/> 
    </xsl:template> 
    <xsl:template match="@*"> 
     <xsl:value-of select="concat(name(),': ',.,'&#xA;')"/> 
    </xsl:template> 
</xsl:stylesheet> 

隨着輸入:

<field type="math" size="12" unitText="%" unitPos="back"/> 

輸出:

type: math 
size: 12 
unitText: % 
unitPos: back 
+0

原來不是區分大小寫的比較。 :( – bobber205 2010-09-02 21:19:11

+0

@ bobber205:是的,這是XML的基礎,無論您是在處理XPath,CSS還是Emacscript – 2010-09-02 22:15:55