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
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
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,
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
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
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden