Bonjour,
J'ai besoin de faire une boucle imbriquée dans mon XSL pour comparer le nom des variables et récuperer leur valeurs.
XML :
mon XSL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <s:Schema id="RowsetSchema"> <s:ElementType name="row" content="eltOnly" rs:CommandTimeout="30"> <s:AttributeType name="ows_Attachments" rs:name="Pièces jointes" rs:number="1"> <s:datatype dt:type="boolean" dt:maxLength="1" /> </s:AttributeType> <s:AttributeType name="ows_LinkTitle" rs:name="Titre" rs:number="2"> <s:datatype dt:type="string" dt:maxLength="512" /> </s:AttributeType> <s:AttributeType name="ows_Variable1" rs:name="Variable1" rs:number="3"> <s:datatype dt:type="float" dt:maxLength="8" /> </s:AttributeType> <s:AttributeType name="ows_variable2" rs:name="variable2" rs:number="4"> <s:datatype dt:type="float" dt:maxLength="8" /> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <z:row ows_Attachments="0" ows_LinkTitle="client1" ows_Variable1="125.512212" ows_variable2="259.000000000000" /> <z:row ows_Attachments="0" ows_LinkTitle="client2" ows_Variable1="258.000000000000" ows_variable2="256.000000000000" /> </rs:data>
Enfaite j'aimerai récuperer la valeur de chaque variable ows_Variable1(ows_Variable2, ...) ainsi que son nom(mais il me faut son nom pour récuper sa valeur ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 <table border="1" id="lesClients"> <xsl:for-each select="//rs:data/z:row"> <xsl:variable name="ID" select="position()"/> <tr> <td WIDTH="70" align="center" onClick="put({$ID})" title="Cliquez pour executer"> <b><xsl:value-of select="@ows_LinkTitle" /></b> </td> <xsl:for-each select="@*"> <xsl:variable name="var" select="."/> <xsl:for-each select="//s:ElementType/s:AttributeType/@*"> <xsl:variable name="i" select="position()"/> <xsl:variable name="var2" select="."/> <xsl:if test="$var=$var2"> <td title="variable{$i}" id="T{$ID}{.}"> <xsl:value-of select="floor(.)"/> </td> </xsl:if> </xsl:for-each> </xsl:for-each> </tr> </xsl:for-each> </table>) qui est dans le rs:name qui est enfaite son nom de variable sans le "ows_". Pour ça j'ai pensé à parcourir les attribut de chaque element z:row et les comparer avec les attributs de chaque élement AttributesTypes et quand ils sont pareil j'affiche la valeur et je recuperere le nom ... possible?
Partager