Avatar billede strcoder Nybegynder
20. marts 2003 - 11:47 Der er 4 kommentarer og
1 løsning

TR baggrundsfarve

Hej folkens jeg har brug for at <tr> skifter baggrundsfarve melle 2 farver, jeg kan ikke få det til at virke.

Jeg har kigget her men fatter intet !!
http://www.eksperten.dk/spm/277403

Er der nogle der kan modificer nedenstående så det virker ? gerne med forklaring om hvorden det virker

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
  <xsl:template match="/">
  <xsl:for-each select="firma/persondata">
    <tr>
    <td><xsl:value-of select="navn"/></td>
    <td><xsl:value-of select="adresse"/></td>
    </tr>
  </xsl:for-each>
  </xsl:template>
</xsl:stylesheet>
Avatar billede atoft Nybegynder
20. marts 2003 - 12:35 #1
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
    <xsl:template match="/">
        <xsl:for-each select="firma/persondata">
            <tr>
                <xsl:attribute name="bgcolor"><xsl:if test="position() mod 2 = 0">
                    blue
                </xsl:if><xsl:if test="not (position() mod 2 = 0)">
                    red
                </xsl:if></xsl:attribute>
                <td>
                    <xsl:value-of select="navn"/>
                </td>
                <td>
                    <xsl:value-of select="adresse"/>
                </td>
            </tr>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

ovenstående skulle gør det. Bemærk jeg har ændre namespacet til http://www.w3.org/1999/XSL/Transform
Avatar billede strcoder Nybegynder
20. marts 2003 - 13:34 #2
position() er en udefineret funktion siger asp kompileren.

jeg har selv løst problemet:
-----------------------------------
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
  <xsl:script><![CDATA[
  function even(e)
  {
    return absoluteChildNumber(e)%2 == 0;
  }
  ]]></xsl:script>
<xsl:template match="/">
<xsl:for-each select="firma/persondata">
<tr>
<xsl:attribute name="bgcolor">
<xsl:eval>even(this)? "efefef":"ffffff" </xsl:eval>
</xsl:attribute>
Avatar billede atoft Nybegynder
20. marts 2003 - 13:52 #3
position() findes ikke i

http://www.w3.org/TR/WD-xsl namespaces som er microsofts bud på xslt stanard inden den blev w3 godkendte standarden.

Der er mange ting som ikke er ens i de to versioner derfor vil jeg anbefale at du skifter til nedenstående.

http://www.w3.org/1999/XSL/Transform

Det er altså

<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

der skal rettes til

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

Hvis du ikke gør det kan du finde mangle eksempler på nettet som ikke vil virke i det setup. Et eksempel kunne være sorteringsfuntionen som er forskellig i de to versioner. Så jo før du skifter jo bedre. :-)
Avatar billede strcoder Nybegynder
21. marts 2003 - 10:52 #4
Jeg har skiftet, mange tak, læg et svar for points.
Avatar billede atoft Nybegynder
21. marts 2003 - 11:28 #5
takker
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