XML文档:
<?xml version="1.0" encoding="UTF-8"?>
<ProcessData>
<SOAPAction>urn:echo</SOAPAction>
<Content_Type>text/xml;charset=UTF-8</Content_Type>
<uname>sarah_brcm</uname>
<pwd>BRCM_UVLwNhjrA5fbgqkUNdxQXMfcCDJ</pwd>
</ProcessData>
XSLT:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="ProcessData/SOAPAction/text()"/>
<br/>
<xsl:copy-of select="ProcessData/Content_Type/text()"/>
</xsl:template>
</xsl:stylesheet>
但是输出不包含前两行之间的断行。
答案 0 :(得分:1)
我已经在xslttest.appspot.com上检查了你的代码,但它确实有效。你如何进行转型?在浏览器中?的libxslt? ...撒克逊?你也可能需要“html”输出方法,而不是“xml”
答案 1 :(得分:1)
<br/>
用于输出HTML。如果您想在数据节点中插入换行符,建议您使用
。
<强> HTML:强>
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="ProcessData/SOAPAction/text()"/>
<br/>
<xsl:copy-of select="ProcessData/Content_Type/text()"/>
</xsl:template>
</xsl:stylesheet>
<强> XML:强>
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="ProcessData/SOAPAction/text()"/>
<xsl:text> </xsl:text>
<xsl:text> </xsl:text>
<xsl:copy-of select="ProcessData/Content_Type/text()"/>
</xsl:template>
</xsl:stylesheet>