我有一个我正在尝试编辑的XSLT文档,以便它能正确显示HTML而不是显示实际的HTML标记。下面是XSLT和HTML的一部分内容。呈现页面时显示HTML标记而不是呈现它们。任何帮助将非常感激。抱歉,代码在一行上。如果在多行上格式化,我无法弄清楚如何让它工作。
<!-- Test Template -->
<xsl:template match="TestTemplate">
<table border="0" width="100%">
<tr>
<td>
<font
style='font-family:Tahoma, Verdana, Geneva, sans-serif;
font-size:14px; color:#c41130'>
<b>
<xsl:value-of select="Title" />
</b>
</font>
</td>
</tr>
</table>
<table border="0">
<tr>
<td class="Label">
<font style="color:#333333">
<b>Title</b>
</font>
</td>
<td>
<font style="color:#333333">
<xsl:value-of select="Title" />
</font>
</td>
</tr>
<tr>
<td class="Label">
<font style="color:#333333">
<b>Department</b>
</font>
</td>
<td>
<font style="color:#333333">
<xsl:value-of select="Department" />
</font>
</td>
</tr>
<tr>
<td class="Label">
<font style="color:#333333">
<b>Type</b>
</font>
</td>
<td>
<font style="color:#333333">
<xsl:value-of select="JobType" />
</font>
</td>
</tr>
</table>
<table border="0" width="100%">
<tr>
<td class="line">
<img src="/img/s.gif" height="1" width="1" />
</td>
</tr>
<tr>
<td>
<img src="/img/s.gif" height="5" width="1" />
</td>
</tr>
</table>
<xsl:if test="(Description)">
<br />
<font
style='font-family:Tahoma, Verdana, Geneva, sans-serif;
font-size:14px; color:#c41130'>
<b>Description</b>
</font>
<br />
<xsl:apply-templates select="Description/Line" />
<br />
</xsl:if>
<br />
</xsl:template>
测试显示html标记而不是呈现它们的HTML。
<b>TEST HEADING</b>
<ul>
<li></li>
This should be a list.
</li>
<li>This should be a list.</li>
<li>This should be a list.</li>
<li>This should be a list.</li>
<li>This should be a list.</li>
<li>This should be a list.</li>
</ul>
答案 0 :(得分:3)
您在哪里尝试转换/显示输入/输出?在浏览器中? XSLT的默认输出方法是XML,但您可以使用以下命令指定HTML:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<!-- other XSLT goes here -->
</xsl:stylesheet>
在Firefox中,例如,这会导致将输出呈现为网页。