我是XML的初学者。我使用了这本书" XML:Visual Quickstart Guide"凯文霍华德戈德堡。我刚刚学会了如何使用XSLT转换XML文件。您将在我的代码中看到的所有内容都是我迄今为止所学到的关于XML和XSLT的内容。
我想制作一个包含XML数据的HTML表格,如下所示:
http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdcatalog&xsltfile=cdcatalog
但它只显示连续数据而不呈现HTML标记:
http://i.stack.imgur.com/QLECw.jpg
那为什么我的代码不起作用?
这是我的XML代码:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet content-type="application/xml" href="page2_xslt.xsl"?>
<favNumbers>
<song>
<title>Song 1</title>
<artist>Artist 1</artist>
</song>
<song>
<title>Song 2</title>
<artist>Artist 2</artist>
</song>
<song>
<title>Song 3</title>
<artist>Artist 3</artist>
</song>
<song>
<title>Song 4</title>
<artist>Artist 4</artist>
</song>
</favNumbers>
这是我的XSLT代码:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" />
<xsl:template match="/">
<html>
<head>
<title>Favorite Songs</title>
</head>
<body>
<table>
<tr>
<th>Favorite Songs</th>
</tr>
<tr>
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="favNumbers/song">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="artist" /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
现在变得非常令人沮丧。我错过了引用,逗号还是其他什么?或者它是更复杂的东西。我在许多网站上搜索过一个答案,但我找不到答案,可能是因为英语不是我的第一语言。所以请帮帮我。
谢谢:)
答案 0 :(得分:1)
尝试在XML中更改此部分:
<?xml-stylesheet content-type="application/xml" href="page2_xslt.xsl"?>
为:
<?xml-stylesheet type="text/xsl" href="page2_xslt.xsl"?>