【问题标题】:javascript for loop not working in xsltjavascript for 循环在 xslt 中不起作用
【发布时间】:2013-08-17 04:16:39
【问题描述】:
我在 XSLT 样式表中使用以下 javascript 代码。它在没有 for 循环的情况下工作。但是我在“
function activate(id)
{
try
{
alert('enter');
var table = document.getElementById('billmain');
var valueImp="";
alert(table.rows.length)
for(i=1; i <table.rows.length; i++)
{
valueImp = table.rows[i].cells[0].innerHTML;
alert(valueImp);
}
return false;
}catch(ex)
{
alert(ex.Message);
}
}
【问题讨论】:
标签:
c#
asp.net
xslt
xslt-1.0
xslt-2.0
【解决方案1】:
XSLT 样式表是一个 XML 文档,因此应用 XML 语法规则意味着您需要将 &lt; 小于号转义为 &lt; 或使用 CDATA 部分,例如
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="html"/>
<xsl:template match="/">
<html>
<head>
<title>Example</title>
<script><![CDATA[
function activate(id)
{
try
{
alert('enter');
var table = document.getElementById('billmain');
var valueImp="";
alert(table.rows.length)
for(i=1; i <table.rows.length; i++)
{
valueImp = table.rows[i].cells[0].innerHTML;
alert(valueImp);
}
return false;
}catch(ex)
{
alert(ex.Message);
}
}
]]></script>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<!-- further templates go here -->
</xsl:stylesheet>