1

所以我正在尝试使用 xml 和 xslt 文件创建一个站点地图。

我希望站点地图的 URL 在显示时可以点击(对此非常新)......据我所知:

<h3>Sitemap</h3>
<xsl:for-each select="urlset/url">
<p>
    <xsl:element name="a">
    <xsl:attribute name="href">
        <xsl:value-of select="loc"/>
    </xsl:attribute>
    <xsl:text>Link</xsl:text>
    </xsl:element>
</p>
</xsl:for-each>

任何知道如何将“链接”一词更改为其指向的站点地址的 URL?同时仍然保留超链接?

我已经尝试过:

<h3>Sitemap</h3>
<xsl:for-each select="urlset/url">
<p>
    <xsl:element name="a">
    <xsl:attribute name="href">
        <xsl:value-of select="loc"/>
    </xsl:attribute>
    <xsl:text><xsl:value-of select="loc"/></xsl:text>
    </xsl:element>
</p>
</xsl:for-each>

但我得到一个错误:(

帮助?

4

2 回答 2

1

<xsl:text>元素不能有任何子元素。尝试<xsl:text>从 around 移除元素<xsl:value-of select="loc"/>

于 2013-02-15T07:20:28.123 回答
1

您不需要额外<xsl:text>标签,因为<xsl:value>已经创建了一个文本节点

xsl:value-of 元素被实例化以在结果树中创建一个文本节点。

此外,正如@eero-helenius已经说过的那样<xsl:text>,它不接受子元素。

于 2013-02-15T08:16:35.337 回答