나는 문제가있어 누군가가 나를 도울 수 있기를 바랍니다.xsl 모든 행에 대해 html 테이블 wirh 버튼 생성
여기 내 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 테이블의 행을 생성합니다. 모든 행에는 개의 셀이 있습니다. 마지막 셀에는 요소에 대한 도움말 행을 확장 할 수있는 버튼이 있습니다.
지금까지 필자는 row-obejct의 elementID를 사용하여 가시성을 변경하는 java.script 함수를 사용했습니다.
concat 연산자에서 요소 id 및 문자열로 버튼 이름과 objectid를 생성하려고합니다. 하지만 내 결과 테이블에서 모든 버튼은 첫 번째 항목 행 아래의 "도움 요청"을 확장하기 위해서만 동일한 기능을 가지고 있습니다.
각 항목에 대해 "$ button_name"및 "$ button_variable"을 제공하려했으나 정확합니다. 코드에서 실수를 발견 할 수 있습니까?
코드 확인을 보이는을, 문제가 무엇입니까? – Cherniv
문제는 모든 버튼이 동일한 기능을 호출한다는 것입니다. 항상 도움말 행 1에 대한 가시성을 호출합니다. 결과 HTML을 살펴보면 '$ button_name'및 '$ button_variable'은 값과 함께 사용되지 않고 이름과 함께 사용됩니다. 다음과 같이 입력하십시오 : – Logi
내 대답을 업데이트했습니다. 지금 확인하십시오. – Cherniv