所以我有一个XML,XSL和Javascript文件。我不会复制我的整个XML文件,因为它太大了,但这里是有问题的代码:
<courses>
<course>
<c_info>
<c_code>U65</c_code>
<c_title>Computer Science</c_title>
</c_info>
然后我有一个包含这些参数的Javascript文件
function transform(message) {
transformXML("xml_courseinfo.xml", "course_menu.xsl", "main_body", "sid", message)
}
然后在我的XSL文件中,我有以下几行:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="sid" />
<xsl:template match="/">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Cross Browser Compatible Parameter Passing</title>
<!-- javascript processor for loading the xslts with the xml-->
<script language="javascript" type="text/javascript" src="processxml.js"></script>
</head>
<body>
<div id="main_body">
<h1>Course Main Menu</h1>
<xsl:for-each select="courses/course/c_info[c_code=$sid]">
<Strong>Course Name:</Strong> <xsl:value-of select="c_title"/> <hr />
</xsl:for-each>
</div>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
根本没有显示,我给它正确的路径,课程代码(c_code
)是唯一的,任何人都可以帮我理解这里的问题吗?
先谢谢你们!
答案 0 :(得分:0)
如果没有显示任何内容,则表示XSLT根本没有执行,或者您提供了错误的$ sid值。通过使样式表输出一些常量文本,例如
,您可以轻松地发现其中哪一项是正确的<h1>Transformation output for sid=<xsl:value-of select="$sid"/></h1>