webForumDet fria alternativet

Problem med"varannanradsfärg"

ASP

6 svar · 336 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Tidigare så fixade jag varannanradsfärg så här:

j = j + 1
     	    if j mod 2 then
     	       rowColor = "#FFF7F2"
     	    else
     	       rowColor = "#FBE2D3"

end if
 %>
    <TR bgcolor = "<%= rowColor %>">'osv

innan denna koden, så är j=0
Denna kod fungerar kanonbra, men eftersom den är väldigt ofta
förekommande, så har jag nu lagt den i en sub, som jag inkludera
i de sidor där den behövs.
Så här ser det ut:

Sub ColorRow(iCount,firstColor,secendColor)
iCount = iCount + 1
    if iCount mod 2 then
       rowColor = firstColor
    else
       rowColor = secendColor
    end if
End Sub
'och jag kallar på den så här:
Call ColorRow(j,"#FFFFFF","#F4F1F1")
   %>
    <TR bgcolor = "<%= rowColor %>">

Problemet är att första raden inte får någon av färgerna.
När jag jag tittar på den via "visa källa" så på första "varvet" är
rowColor tomt. Därefte så fungerar det bra.

Någon som har en smart idé om varför den uppför sig så här?

:q

Medlem sedan okt. 2002257 inlägg
#2

Sätter du verkligen "j" till 0 innan du kallar på ColorRow?

j = 0
Call ColorRow(j,"#FFFFFF","#F4F1F1")
Medlem sedan mars 20011 880 inlägg
#3

Japp, det ligger ovanför denna koden.
Det är därför som jag tycker att detta är så lustigt.

Medlem sedan dec. 19996 721 inlägg
#4

Det blir fel eftersom rowColor är en lokal variabel i subben, och iCount också. Om du vill ha kvar subben så får du dimma rowColor utanför subben, och ha iCount som en referensvariabel

Dim rowColor

Sub ColorRow(ByRef iCount,firstColor,secondColor)

Medlem sedan mars 20011 880 inlägg
#5

Tack, så enkelt var det.

Medlem sedan juni 200032 967 inlägg
Medlem sedan mars 20011 880 inlägg
#7

Ber om ursäkt @nders, jag tycks alltid glömma den länken

295 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
149 ms — deklarationer (db)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)
151 ms — ändringar (db)