KlausInge Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Hallo alles zusammen, ich habe hier eine xsl Datei, welche eine Ausgabe machen soll. Dies geht auch, nur wird immer nur ein Eintrag genommen und nicht alle. Hier der Code... <xsl:for-each select="ProfSkills/GroupSkills"> <xsl:variable name="groupName" select="GroupSkillsName"/> <xsl:for-each select="Skill"> <xsl:choose> <xsl:when test="position() =1"> <xsl:choose> <xsl:when test="$groupName ='Hardware'"> <tr> <td width="160" valign="top" style="width:160"> <b><p class="MsoNormal"><span style='font-size:10.0pt; font-family:Verdana'>Hardware:</span></p></b> </td> <td> <xsl:choose> <xsl:when test="$groupName ='Hardware'"> <xsl:value-of select="."/> <xsl:if test="position()!=last()"><xsl:text>, </xsl:text></xsl:if> </xsl:when> </xsl:choose> </td> </tr> </xsl:when> </xsl:choose> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:for-each> [/PHP] In Der Gruppe Hardware sind mehrer Einträge da. Was mus sgeändert werden, damit der alle nimmt? Klaus Zitieren
kingofbrain Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Servus, meine XSLT-Zeit ist zwar schon ein bisschen her, aber kann es an Deinem <xsl:when test="position() =1"> liegen? Das sollte doch nur beim ersten Eintrag zutreffen. Schmeiß das mal raus und probiers. Peter Zitieren
KlausInge Geschrieben 6. Mai 2008 Autor Geschrieben 6. Mai 2008 da bekomm eich einen fehler au sder software, die das ganze verarbeitet. also wird es da zu einer fehlermeldung kommen, Zitieren
kingofbrain Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 Ach so, dann gehts nicht. Im Ernst: Was soll mir das sagen: da bekomm eich einen fehler au sder software, die das ganze verarbeitet. also wird es da zu einer fehlermeldung kommen, Ich vermute jetzt einfach mal wieder wild in der Gegend rum: Du bekommst einen Fehler aus der weiterverarbeitenden Software, wenn Du eine Einschränkung aus Deinem XSL rausnimmst, aber Du willst diese Einschränkung nicht haben? Dann ist die weiterverarbeitende Software Dein Problem, nicht die Transformation mit XSL. Peter Zitieren
KlausInge Geschrieben 7. Mai 2008 Autor Geschrieben 7. Mai 2008 Hallo, ich habe das ganz enochmals überarbeitet. Die Anzeige ist nun so wie es sein soll, nur ein kleiner Schönheitsfehler ist noch da. Da ich nun seit einigen Stunden daran sitze, wende ich mich noch mal hier her. Folgender Code: <!-- Datenbanken --> <xsl:for-each select="ProfSkills/GroupSkills"> <xsl:variable name="groupName" select="GroupSkillsName"/> <xsl:for-each select="Skill"> <xsl:choose> <xsl:when test="position() =1"> <xsl:choose> <xsl:when test="$groupName ='Datenbanken'"> <tr> <td width="160" valign="top" style="width:160"> <b><p class="MsoNormal"><span style='font-size:10.0pt; font-family:Verdana'>Datenbanken:</span></p></b> </td> <td width="500" valign="top" style="width:500;border:none;border-left:solid blue 1.0pt"> </td> </tr> </xsl:when> </xsl:choose> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:for-each> <xsl:for-each select="ProfSkills/GroupSkills"> <xsl:variable name="groupName" select="GroupSkillsName"/> <xsl:for-each select="Skill"> <xsl:choose> <xsl:when test="$groupName ='Datenbanken'"> <span style='font-size:10.0pt; font-family:Verdana;'> <xsl:value-of select="."/> <xsl:if test="position()!=last()"><xsl:text>, </xsl:text></xsl:if> </span> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:for-each> <!-- DC/Netzwerke --> <xsl:for-each select="ProfSkills/GroupSkills"> <xsl:variable name="groupName" select="GroupSkillsName"/> <xsl:for-each select="Skill"> <xsl:choose> <xsl:when test="position() =1"> <xsl:choose> <xsl:when test="$groupName ='DC/Netzwerke'"> <tr> <td width="160" valign="top" style="width:160"> <b><p class="MsoNormal"><span style='font-size:10.0pt; font-family:Verdana'>DC/Netzwerke:</span></p></b> </td> <td width="500" valign="top" style="width:500;border:none;border-left:solid blue 1.0pt"> </td> </tr> </xsl:when> </xsl:choose> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:for-each> <xsl:for-each select="ProfSkills/GroupSkills"> <xsl:variable name="groupName" select="GroupSkillsName"/> <xsl:for-each select="Skill"> <xsl:choose> <xsl:when test="$groupName ='DC/Netzwerke'"> <span style='font-size:10.0pt; font-family:Verdana;'> <xsl:value-of select="."/> <xsl:if test="position()!=last()"><xsl:text>, </xsl:text></xsl:if> </span> </xsl:when> </xsl:choose> </xsl:for-each> </xsl:for-each> [/PHP] Dieser erzeugt eine Ausgabe in einer Tabelle. Datenbanken Wert1, Wert2 usw. DC/Netzwerke Wert1, Wert2 usw. Das Problem ist, dass der Bezeichner "Datenbanken bzw. DC/ Netzwerke) immer eine Zeile nach unten gesetzt ist bzw. über dem bezeichner eine Leerzeile ist. Hat jemand eine Idee, wie ich dies weg bekomme? Klaus Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.