我有一个问题,我希望有人可以帮助我。
这是我的 xsl 文件的缩短部分。
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:con="http://eviware.com/soapui/config">
<xsl:output method="html" indent="yes" encoding="UTF-8"/>
<xsl:template match="/">
<html>
<head>
<script type="text/javascript">
function anAus(id)
{
if (document.getElementById(id).style.display == 'none')
{ document.getElementById(id).style.display = 'block';
} else
{ document.getElementById(id).style.display = 'none';}
}
</script>
</head>
<body>
<TABLE border="1">
<thead>
<TH>[ id ]</TH>
<TH>[ name ]</TH>
<TH>[ aktiv ]</TH>
<TH>[ result ]</TH>
<TH>[ help ]</TH>
</thead>
<tbody>
<xsl:for-each select="....." >
<TR>
<TD><xsl:value-of select="ID" /></TD>
<TD><xsl:value-of select="name" /></TD>
<TD> <xsl:value-of select="@activated" /></TD>
<TD><xsl:value-of select="result" /></TD>
<!-- column 5 --- Button -->
<xsl:variable name="button_name" select="concat('Button_',$ID)"/>
<xsl:variable name="button_variable" select="concat('but_var',$ID)"/>
<TD width="50" align="center"><input name="$button_name" Type="button" value="help" onClick="javascript:anAus('$button_variable')"/></TD>
</TR>
<TR id="$button_variable" style="display:none">
<TD colspan="5" >
<xsl:value-of select = "$verbesserung" /></TD>
</TR>
</tbody>
</TABLE>
现在解释我的问题:
对于每个元素,我在 html 表中生成一行。每行有 5 个单元格。最后一个单元格中是一个按钮,它可以为元素展开一个帮助行。
到目前为止,我使用了一个 java.script 函数,它使用 row-obejct 的 elementID 来更改可见性。
我尝试通过元素 id 和 concat 运算符中的字符串生成按钮名称和 objectid。但在我的结果表中,每个按钮都具有相同的功能,只是在第一个条目行下展开“帮助行”。
我试图为每个条目给出“$button_name”和“$button_variable”,它们是正确的。有人可以在代码中找到错误。