我目前正在使用一组用于报告的XSL模板。我遇到的问题是我的JavaScript变量没有被更新。我目前在页面顶部包含了JavaScript,但是在其下面定义了Javascript变量。这可能是问题吗?我应该在哪里定义这些变量?是否有一种特殊的方式在XSL模板之间传递它们?到目前为止,我还没有使用任何Javascript,我只使用XSL。但是,我需要执行一些计算,而且还需要更新变量,所以我需要弄清楚如何让变量在模板之间移动。还是有一种方式?XSL:跨XSL模板和文件传递Javascript变量
所以在下面,有些模板被调用时会调用函数,还有一个语句会根据XSL值更新开始和结束日期值。问题是所有正在打印的是初始设定值,而不是更新值。
任何帮助指出我在正确的方向将是伟大的。
在此先感谢!
<xsl:param name="DisplayEmptyFields" select="true()"/>
<xsl:template match="/">
<xsl:include href="./Templates/styles.xslt"/>
<xsl:include href="./Templates/md_GeneralReportTemplates.xslt"/>
<xsl:include href="./Templates/md_RunDetailReportTemplate.xslt"/>
<html>
<head>
<script type="text/javascript">
var d = "";
var startdate = "6/7/2100 10:56:34 AM";
var enddate = "6/7/2008 10:56:34 AM";
var totruns = 0;
var passedruns = 0;
var failedruns = 0;
var date.flag = 0;
function ticks(){
totruns++;
}
function passticks(){
passedruns++;
}
function failticks(){
failedruns++;
}
</script>
<xsl:call-template name="DefineStyles"/>
</head>
<body>
<xsl:call-template name="pageheader"/>
<xsl:apply-templates select="run"/>
</xsl:for-each>
<table xsl:use-attribute-sets="report-detail-table-format">
<tr xsl:use-attribute-sets="report-header-row-table-format">
<th colspan="4">
Summary
</th>
</tr>
<tr>
<td><b>Total Runs: </b><script type="text/javascript">document.write(totruns);</script></td>
<td><b>Passed Runs: </b><script type="text/javascript">document.write(passedruns);</script></td>
<td><b>Failed Runs: </b><script type="text/javascript">document.write(failedruns);</script></td>
<td><b>Pass Rate: </b><script type="text/javascript">document.write(Math.round((passedruns/totruns*100)*Math.pow(10,2))/Math.pow(10,2));</script>%</td>
</tr>
<tr>
<td colspan="2"><b>Execution Start: </b><script type="text/javascript">document.write(startdate);</script></td>
<td colspan="2"><b>Execution End: </b><script type="text/javascript">document.write(enddate);</script></td>
</tr>
</table>
</body>
</html>
'ticks()','passticks()'和'failticks()'改变js vars的值,你是document.write到页面。这些叫什么名字?你能编辑你的答案并粘贴你从这个XSL/XSLT获得的HTML输出吗? – mrk