Bonjour,
J'aimerai savoir ou avoir une idée sur comment on peut à partir d'une liste de données suivi par des checkbox, créer un
formulaire de saisi de données en fonction des cases qui sont
cochées seulement.
Le code ci dessous est celui qui me permet de générer des information suivi par des checkbox à partir d'un fichier Xml.
Code XML :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template mode="script" match="/">
<script type="text/javascript" language="JavaScript">
function appel(zone)
{ alert( zone + "\r\n" + "id=" +zone.id );
}
</script>
</xsl:template>
<xsl:template match="/">
<div class="important"><center><h1>Information pour constuction d'un template FGDC</h1></center></div>
<table>
<tr><h2 style="color:red"><xsl:value-of select="/root/gui/fgdc-std/element"/></h2>
<td>     <input class="content" type="checkbox" name="ADN1" id="ADN1" onclick="appel(this);" />
</td>
</tr>
</table>
<table>
<xsl:for-each select="/root/gui/fgdc-std/element[position()=13
or position()=16
or position()=4
or position()=2
or position()=12
or position()=3
or position()=6]">
<tr>
<th>
<!-- xsl:number count="/root/gui/fgdc-std/element" format="1" from="/"/>
<xsl:text>. </xsl:text -->
<xsl:value-of select="label"/><text style="color:red">*</text>
</th>
<td>   
<!-- variable name -->
<xsl:variable name="nameId">
<xsl:value-of select="@name" />
</xsl:variable>
<!-- Génération d'un nouvel id, positionné dans une variable -->
<xsl:variable name="generateId">
<xsl:value-of select="concat('check1', position())" />
</xsl:variable>
<input class="content" type="checkbox" name="{$nameId}" id="{$generateId}" onclick="appel(this);" />
</td>
</tr>
</xsl:for-each>
</table>
<table>
<tr><h2 style="color:red"><xsl:value-of select="/root/gui/fgdc-std/element"/></h2>
<td>    <input class="content" type="checkbox" name="ADN2" id="ADN2" onclick="appel(this);" />
</td>
</tr>
</table>
<table>
<xsl:for-each select="/root/gui/fgdc-std/element[position()=14
or position()=11
or position()=20]">
<tr>
<th>
<xsl:value-of select="label"/>
</th>
<td>   
<!-- variable name -->
<xsl:variable name="nameId">
<xsl:value-of select="@name" />
</xsl:variable>
<!-- Génération d'un nouvel id, positionné dans une variable -->
<xsl:variable name="generateId">
<xsl:value-of select="concat('check2', position())" />
</xsl:variable>
<input class="content" type="checkbox" name="{$nameId}" id="{$generateId}" onclick="appel(this);" />
</td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
Merci d'avance.