我有一个相当简单的 xsl 样式表,用于将定义我们的 html 的 xml 文档转换为 html 格式(请不要问为什么,这只是我们必须这样做的方式......)
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="HtmlElement">
<xsl:element name="{ElementType}">
<xsl:apply-templates select="Attributes"/>
<xsl:value-of select="Text"/>
<xsl:apply-templates select="HtmlElement"/>
</xsl:element>
</xsl:template>
<xsl:template match="Attributes">
<xsl:apply-templates select="Attribute"/>
</xsl:template>
<xsl:template match="Attribute">
<xsl:attribute name="{Name}">
<xsl:value-of select="Value"/>
</xsl:attribute>
</xsl:template>
当我遇到需要转换的一小段 HTML 时,问题就出现了:
<p>
Send instant ecards this season <br/> and all year with our ecards!
</p>
中间<br/>
的打破了转换的逻辑,只给了我段落块的前半部分:Send instant ecards this season <br></br>
. 尝试转换的 XML 如下所示:
<HtmlElement>
<ElementType>p</ElementType>
<Text>Send instant ecards this season </Text>
<HtmlElement>
<ElementType>br</ElementType>
</HtmlElement>
<Text> and all year with our ecards!</Text>
</HtmlElement>
建议?