Avatar billede martin_v Nybegynder
14. december 2000 - 14:13 Der er 10 kommentarer og
1 løsning

Skifte sylesheet i en while loop

Hej Eksperter
Jeg er ingen Haj til java, men jeg har roddet mig ud i at skulle arbejde med nogle JSP filer.

Mit spørgsmål er: Hvordan for jeg følgende tabel i HTML til at ændre farve for hver ny row. Der skal altså skiftes mellem to farver, for overdkuelighedens skyld...


<%
                            while (userIDs.hasNext())
                       
                            {
                            String  currentID=(String) userIDs.next();
                            String  currentName =(String) userNames.next();
                            String  currentLogin =(String) userLogins.next();
                        %>
                          <TR>
                            <TD CLASS=\"formValue\" height=\"17\"><img src=\"/images/shim.gif\" width=\"10\" height=\"1\" alt=\"\"><A HREF=\"<%=mainServlet%>?Request_Name=Display_User_For_Edit&User_ID=<%=currentID%>\"><%=currentLogin%></A></TD>
                            <TD CLASS=\"formValue\"><%=currentName %></TD>
                          </TR>
                         


                        <%
                            }
                        %>

Jeg kunne nok få banket noget sammen med en if funsktion. Men der må være en rigtig måde.


Avatar billede disky Nybegynder
14. december 2000 - 14:16 #1
Brug enten en if sætning eller en unary operator, du ved:   
(rovNumber++)%2==0 ? farveGul : farveRød

hvis du forstår
Avatar billede pstric Nybegynder
14. december 2000 - 14:29 #2
unary = ternary
Avatar billede martin_v Nybegynder
14. december 2000 - 14:30 #3
Nej jeg forstår desværre ikke

forklat venligst :-)

Jeg er gammel ASP-Nørd så den har stået på VB
Avatar billede disky Nybegynder
14. december 2000 - 14:41 #4
Glimrende valg at skifte til JSP

Prøv det her:

<%
    int rowNumber=0;
    String colorRed=\"#ff0000\";
    String colorGreen=\"#00ff00\";

    while (userIDs.hasNext())
    {
        String  currentID=(String) userIDs.next();
        String  currentName =(String) userNames.next();
        String  currentLogin =(String) userLogins.next();
       
        String color=((rowNumber++)%2==0?colorRed:colorGreen);
%>
        <TR>
        <TD CLASS=\"formValue\" height=\"17\" BGCOLOR=<%=color%>><img src=\"/images/shim.gif\" width=\"10\" height=\"1\" alt=\"\"><A HREF=\"<%=mainServlet%>?Request_Name=Display_User_For_Edit&User_ID=<%=currentID%>\"><%=currentLogin%></A></TD>
        <TD CLASS=\"formValue\"><%=currentName %></TD>
        </TR>
<%
    }
%>
Avatar billede martin_v Nybegynder
14. december 2000 - 14:48 #5
Tak Disky det tror jeg godt jeg kan bruge

Men hvad er det lige der sker her.

String color=((rowNumber++)%2==0?colorRed:colorGreen);

Det er jo åbenbart her det hele sker i koden
Avatar billede disky Nybegynder
14. december 2000 - 14:53 #6
det er ret simpelt :-)

du har en variabel \'rowNumber\' som der blvier lagt en til \'++\'.
derefter findes resten ved en division med 2, hvis taller er lige giver det 0 ellers giver det 1.

Og det skifter hver anden gang.

Hvis resten er 0 så skal \'color\' blive lig med indholdet af variablen \'colorRed\' ellers lig med \'colorGreen\'

Så din tabels </td> tags for skiftehvis farven rød eller grøn.


en lille detalje du skal nok også indsætte
\' BGCOLOR=<%=color%>\'
i alle dine <td>
Avatar billede martin_v Nybegynder
14. december 2000 - 14:58 #7
Tak for svaret Disky
Jeg tænkte nok det var noget i den stil!!!


Så nu er det spændende nu står min weblogic server og fortolker siden...

Mon det dur jeg kan ikke vente :-)

Avatar billede martin_v Nybegynder
14. december 2000 - 14:59 #8
Det virkede fik du dine point Disky
Avatar billede disky Nybegynder
14. december 2000 - 15:00 #9
jeg takker og bukker :-)

bare spørg hvis du har problemmer igen.
Jeg lave såmen ikke andet på arbejde end java, jsp og co :-)
Avatar billede martin_v Nybegynder
14. december 2000 - 15:02 #10
TAK TAK. Der vil nok komme flere spørgsmål fra mig...

Ville det være bedre at stille dem i JSP gruppen?
Avatar billede disky Nybegynder
14. december 2000 - 15:02 #11
umiddelbart ja.

men jeg tror det fleste der kigger i JSP gruppen også bruger java gruppen
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