Html XML/XSL表未显示
我在XSL页面中显示XML时遇到了很多问题。该表根本不显示内容。它在预览中运行良好,但当我实际加载页面时,表中不会显示任何内容 XSL:Html XML/XSL表未显示,html,css,xml,xslt,Html,Css,Xml,Xslt,我在XSL页面中显示XML时遇到了很多问题。该表根本不显示内容。它在预览中运行良好,但当我实际加载页面时,表中不会显示任何内容 XSL: <?xml version="1.0" encoding="iso-8859-1"?><!-- DWXMLSource="XML.xml" --> <!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp " "> <!ENTITY copy "
<?xml version="1.0" encoding="iso-8859-1"?><!-- DWXMLSource="XML.xml" -->
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp " ">
<!ENTITY copy "©">
<!ENTITY reg "®">
<!ENTITY trade "™">
<!ENTITY mdash "—">
<!ENTITY ldquo "“">
<!ENTITY rdquo "”">
<!ENTITY pound "£">
<!ENTITY yen "¥">
<!ENTITY euro "€">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="iso-8859-1" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8" />
<title>XML</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<div id="header">
<div>
<div class="logo">
</div>
</div>
<table width="568" height="133" border="1" align="center">
<xsl:for-each select="movie-List/movie">
<tr>
<td><xsl:value-of select="name"/></td>
</tr>
<tr>
<td><xsl:value-of select="price"/></td>
</tr>
<tr>
<td><xsl:value-of select="genre"/></td>
</tr>
<tr>
<td><xsl:value-of select="age"/></td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
</xsl:for-each>
</table>
<div id="footer">
<div class="clearfix">
<p>
©2014 All Rights Reserved for Josh Entertainment </p>
</div>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
]>
XML
©2014版权归Josh Entertainment所有
XML:
<?xml version="1.0" encoding="iso-8859-1"?>
<movie-List>
<movie>
<name> Birdemic: Shock and Terror </name>
<price> £15 </price>
<genre> Horror </genre>
<age> 2010 </age>
</movie>
<movie>
<name> Overboard </name>
<price> £5 </price>
<genre> Drama</genre>
<age> 1987 </age>
</movie>
<movie>
<name> Going Overboard </name>
<price> £20 </price>
<genre> Comedy</genre>
<age>1989 </age>
</movie>
<movie>
<name> Marvin's Room </name>
<price> £3 </price>
<genre> Drama </genre>
<age> 1996 </age>
</movie>
<movie>
<name> Iron Sky </name>
<price> £30 </price>
<genre> Horror Comedy </genre>
<age> 2012 </age>
</movie>
<movie>
<name> Quills </name>
<price> £1.99 </price>
<genre> Romantic </genre>
<age> 2000 </age>
</movie>
<movie>
<name> The Machinist </name>
<price> £11.99 </price>
<genre> Crime </genre>
<age> 2004 </age>
</movie>
<movie>
<name> Swimming With Sharks </name>
<price> £9.99 </price>
<genre> Comedy </genre>
<age> 1994 </age>
</movie>
</movie-List>
伯德米克:震惊与恐怖
£15
恐怖
2010
落水
£5
戏剧
1987
过火
£20
喜剧片
1989
马文的房间
£3
戏剧
1996
铁天
£30
恐怖喜剧
2012
羽毛笔
£1.99
浪漫的
2000
机械师
£11.99
罪行
2004
与鲨鱼一起游泳
£9.99
喜剧片
1994
感谢您的帮助 变化
<div class="logo">
到
然后,转换使用Saxon 9.5,并使用Firefox查看HTML输出。
不过,这可能只是你文章中的一个输入错误
这是我得到的输出(如果这不是您期望的,请发表评论-让我们知道真正的问题是什么):
XML
伯德米克:震惊与恐怖
£15
恐怖
2010
落水
£5
戏剧
1987
过火
£20
喜剧片
1989
马文的房间
£3
戏剧
1996
铁天
£30
恐怖喜剧
2012
羽毛笔
£1.99
浪漫的
2000
机械师
£11.99
罪行
2004
与鲨鱼一起游泳
£9.99
喜剧片
1994
©2014版权归Josh Entertainment所有
HTML和正文标记在哪里?如何运行预览,以及如何实际加载页面?(这两个过程之间的区别是什么?)您必须决定希望输出采用什么编码。您的
、
和
指令相互冲突。提示:它不是iso-8859-1
。如果您必须使用传统编码,请使用Windows-1252
,这是商定的HTML标准(无论如何,对于“西方”脚本)。但很可能您只是想使用UTF-8
。编写在旧代码页中输出文本的新代码是没有用的。@Tomalak:是的,你说得对,结果中存在编码问题。但是如果我自己尝试,表内容仍然会显示,而OP声明表中没有显示任何内容。不同的浏览器对相互矛盾的编码语句有不同的反应吗?因为不知道OP的输入文件是什么编码,所以所有的赌注都没有了。所有的编码问题都应该首先解决,最好是将一切都转向UTF-8。我在(PHP/libxslt)上尝试了XSLT,在删除
(包含磅符号)或删除
指令之前,输出一直为空。这显然是一个基于编码的问题。
<div class="logo"/>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8"></meta>
<title>XML</title>
<link rel="stylesheet" href="css/style.css" type="text/css"></link>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta>
</head>
<body>
<div id="header">
<div>
<div class="logo"></div>
</div>
</div>
<table width="568" height="133" border="1" align="center">
<tr>
<td> Birdemic: Shock and Terror </td>
</tr>
<tr>
<td> £15 </td>
</tr>
<tr>
<td> Horror </td>
</tr>
<tr>
<td> 2010 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Overboard </td>
</tr>
<tr>
<td> £5 </td>
</tr>
<tr>
<td> Drama</td>
</tr>
<tr>
<td> 1987 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Going Overboard </td>
</tr>
<tr>
<td> £20 </td>
</tr>
<tr>
<td> Comedy</td>
</tr>
<tr>
<td>1989 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Marvin's Room </td>
</tr>
<tr>
<td> £3 </td>
</tr>
<tr>
<td> Drama </td>
</tr>
<tr>
<td> 1996 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Iron Sky </td>
</tr>
<tr>
<td> £30 </td>
</tr>
<tr>
<td> Horror Comedy </td>
</tr>
<tr>
<td> 2012 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Quills </td>
</tr>
<tr>
<td> £1.99 </td>
</tr>
<tr>
<td> Romantic </td>
</tr>
<tr>
<td> 2000 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> The Machinist </td>
</tr>
<tr>
<td> £11.99 </td>
</tr>
<tr>
<td> Crime </td>
</tr>
<tr>
<td> 2004 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
<tr>
<td> Swimming With Sharks </td>
</tr>
<tr>
<td> £9.99 </td>
</tr>
<tr>
<td> Comedy </td>
</tr>
<tr>
<td> 1994 </td>
</tr>
<tr>
<td bgcolor="#000000"> </td>
</tr>
</table>
<div id="footer">
<div class="clearfix">
<p>
©2014 All Rights Reserved for Josh Entertainment
</p>
</div>
</div>
</body>
</html>