显示属性值

时间:2014-01-21 03:15:40

标签: xml xslt

我想使用XSLT显示下面XML代码段的所有属性。但是我的id个人都没有出现。

XML:

<?xml version="1.0" encoding="utf-8"?>

<courses> 
        <course instructors="e101 e102 e103 e104" name="EWS.NET"/> 
        <course instructors="e101 e102 e105" name="GWS.NET"/> 
    <employees> 
        <employee id='e101' name="Aaron Skonnard"/> 
        <employee id='e102' name="Simon Horrell"/> 
        <employee id='e103' name="Dan Sullivan"/> 
        <employee id='e104' name="Scott Bloom"/> 
        <employee id='e105' name="Bob Beauchemin"/> 
    </employees> 
</courses>

XSLT:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="utf-8"/>
<xsl:template match="/">
<h2>Courses and Instructors</h2>
</xsl:template>
<xsl:template match="employees">
<xsl:for-each select="employee">
<xsl:value-of select="employee/@id" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

有人可以帮助我理解为什么我的XSLT代码没有显示id属性吗?

1 个答案:

答案 0 :(得分:0)

请尝试以下模板:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" encoding="utf-8"/>
    <xsl:template match="/">
        <h2>Courses and Instructors</h2>
        <xsl:apply-templates/>
    </xsl:template>
    <xsl:template match="employees">
        <xsl:for-each select="employee">
            <xsl:value-of select="@id" />
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>