【发布时间】:2011-10-19 04:21:09
【问题描述】:
我有一个 XML 文件(动态创建)和一个 XSL 样式表;如果我在 Firefox 中打开 XML 文件,我会得到一个很好的输出表。
但是,我想在一个 HTML 页面中呈现这些数据。我试过使用:
HTML 文件:
<html>
<body>
<xml src="test_data.xml">
</xml>
</body>
</html>
但我无法渲染任何东西。我的 XML 文件和我的 XSL 文件都在同一个目录中。
我尝试从我的 XSL 输出中删除 <html> 和 <body>,但仍然没有得到任何结果。
网上我读到IE和Firefox的一些方法不同;如何在 Firefox 的 HTML 页面中呈现 XML 文件?
XML 文件(test_data.xml):
<?xml-stylesheet type="text/xsl" href="report_proteins.xsl"?>
<group_list>
<protein_group>
<protein name="A_1" />
<protein name="A_2" />
</protein_group>
<protein_group>
<protein name="B_1" />
</protein_group>
<protein_group>
<protein name="C_1" />
<protein name="C_2" />
<protein name="C_3" />
</protein_group>
</group_list>
XSL 文件 (report_proteins.xsl):
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>MAP proteins</h2>
<table border="0">
<tr>
<th bgcolor="#E7FFCC">Group number</th>
<th bgcolor="#D2FBFF">Proteins</th>
</tr>
<xsl:for-each select="group_list/protein_group">
<tr>
<td>
<xsl:number />
</td>
<td>
<xsl:for-each select="protein">
<xsl:value-of select="@name"/><xsl:text> </xsl:text>
</xsl:for-each>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
【问题讨论】: