Avatar billede farouche Nybegynder
14. november 2006 - 10:37 Der er 1 kommentar og
1 løsning

Ændre sidste row i en for-each

Hejsa

Jeg er forholdsvis grøn ud i XSLT, men det går da fremad :)


Er dog lige stødt ind i en udfordring jeg skal ha' lidt hjælp til

Jeg har en for-each som følger :

<xsl:template match="/">
  <xsl:for-each select="Lines/Line">
    <tr>
      <td class="Row"><xsl:value-of select="Type"/></td>
      <td class="Row"><xsl:value-of select="Description"/></td>
      <td class="Row"><xsl:value-of select="Quantity"/></td>
      <td class="Row"><xsl:value-of select="Amount"/></td>
    </tr>
  </xsl:for-each>
</xsl:template>

Det jeg meget gerne vil er at <TD>'er i den sidste <TR> i mit resultat HTML skal ha' en anden CSS class: "LastRow"


Har rodet med noget count, men synes ikke rigtig jeg har siddet i held med det.

Hvordan kan jeg opnå noget sådant med XSLT?

På forhånd tak...
Avatar billede Slettet bruger
14. november 2006 - 12:28 #1
Prøv det her:

<xsl:template match="/">
  <xsl:for-each select="Lines/Line">
  <xsl:variable name="cssClass"><xsl:if test="position() = last()">Last</xsl:if>Row</xsl:variable>
    <tr>
      <td class="{$cssClass}"><xsl:value-of select="Type"/></td>
      <td class="{$cssClass}"><xsl:value-of select="Description"/></td>
      <td class="{$cssClass}"><xsl:value-of select="Quantity"/></td>
      <td class="{$cssClass}"><xsl:value-of select="Amount"/></td>
    </tr>
  </xsl:for-each>
</xsl:template>

Et alternativ til din CSS/HTML:
Læg class="LastRow" på din <tr> istedet for, og adressér dine <td>'er vha.:

tr.LastRow td {  }

/CS
Avatar billede farouche Nybegynder
14. november 2006 - 13:56 #2
Jeg bukker og takker.

Både for det med XSLT og CSS.

Sådan er det jo når man kun kan tingene til husbehov, men nu lærte jeg da et par tricks så jeg har lidt mere at udforske :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester