首页 > 解决方案 > 复制具有属性但没有子元素的元素

问题描述

使用以下xml文档

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

<a name="john">
   <b/>
</a>

和以下 xslt

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

<xsl:stylesheet version="2.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="a">
        <xsl:copy/>
    </xsl:template>

</xsl:stylesheet>

输出是

<?xml version="1.0" encoding="UTF-8"?><a/>

我想要的是<a name="John"/>。我如何获取元素a及其属性name 没有子元素b

标签: xmlxsltcopy

解决方案


也复制属性:

<xsl:template match="a">
    <xsl:copy>
      <xsl:copy-of select="@*"/>
    </xsl:copy>
</xsl:template>

推荐阅读