Avatar billede kjoller Nybegynder
18. december 2001 - 16:57 Der er 6 kommentarer og
1 løsning

vælg select box

Jeg ville gerne lave en tabel med en masse farver i, hvor man så kan klikke på en farve og så markere den den farve i en selectbox enten ved hjlæp af value, beskrivelsen eller indexet helst i den række følge med det har ikke den store betydning.

Mit store problem er at jeg ikke kan få en funktion på bene der kan selecte noget som helst i selectboxen.

Hvad kan jeg gøre?
Avatar billede Slettet bruger
18. december 2001 - 17:12 #1
<script>
function skiftSelect(farve) {
for (i = 0; i < document.frm.sel.length; i++) {
if (document.frm.sel.option[i].value == farve) document.frm.sel.selectIndex = i;
}
}
</script>

<table>
<tr>
<td bgcolor=\"green\" onClick=\"skiftSelect(\'groen\');\">Grøn</td>
<td bgcolor=\"red\" onClick=\"skiftSelect(\'roed\');\">Rød</td>
<td bgcolor=\"white\" onClick=\"skiftSelect(\'hvid\');\">Hvid</td>
</tr>
<tr>
<td bgcolor=\"blue\" onClick=\"skiftSelect(\'blaa\');\">Blå</td>
<td bgcolor=\"brown\" onClick=\"skiftSelect(\'brun\');\">Brun</td>
<td bgcolor=\"yellow\" onClick=\"skiftSelect(\'gul\');\">Gul</td>
</td>
</tr>
</table>

<form name=\"frm\">
<select name=\"sel\">
<option value=\"groen\">#XXXXXX (grøn)</option>
<option value=\"roed\">#XXXXXX (rød)</option>
<option value=\"hvid\">#XXXXXX (hvid)</option>
<option value=\"blaa\">#XXXXXX (blå)</option>
<option value=\"brun\">#XXXXXX (brun)</option>
<option value=\"gul\">#XXXXXX (gul)</option>
</select>
</form>
Avatar billede Slettet bruger
18. december 2001 - 17:12 #2
Ups, scriptet skal se således ud:

<script>
function skiftSelect(farve) {
for (i = 0; i < document.frm.sel.length; i++) {
if (document.frm.sel.options[i].value == farve) document.frm.sel.selectedIndex = i;
}
}
</script>
Avatar billede Slettet bruger
18. december 2001 - 17:15 #3
Og så, for at få det hele til at tage sig så æstetisk ud som muligt, bør du indsætte style=\"cursor: hand;\" på hver <td>, altså fx:

<td bgcolor=\"blue\" onClick=\"skiftSelect(\'blaa\');\" style=\"cursor: hand;\">Blå</td>
Avatar billede Slettet bruger
18. december 2001 - 17:15 #4
Eller bare definere det vha. en stylesheet:

<style>
TD {cursor: hand;}
</style>

Men alt det kan du jo sikkert i forvejen! :)
Avatar billede nikolajdu Nybegynder
18. december 2001 - 17:27 #5
Bare for at lege lidt med, så har jeg brygget lidt om på noget jeg havde liggende i forvejen :))

<html>
<head>
</head>

<body bgcolor=\"#FFFFFF\">

<FORM NAME=\"bestilling\" ACTION=\"\">
<SELECT NAME=\"tone\">
  <script language=JavaScript>
                c = new Array();
               
                c[1] = \"FF\";
                c[2] = \"CC\";
                c[3] = \"99\";
                c[4] = \"66\";
                c[5] = \"33\";
                c[6] = \"00\";
                d = 0;
               
                for (i=1;i <=6;i++){
                    for (m=1;m <=6;m++){       
                        for (n=1;n <=6;n++){   
                            d++;
                            colour = \'\"\' + c[i] + c[m] + c[n] + \'\"\';
                            document.write(\"<option  value=\'Farve\' style=\'background-color=\"+colour+\"\' id=\"+colour+\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</option>\");
                        }
                    }
                }
               
               
                </script>
 
 
</SELECT>

<table>
<script>
c = new Array();
               
                c[1] = \"FF\";
                c[2] = \"CC\";
                c[3] = \"99\";
                c[4] = \"66\";
                c[5] = \"33\";
                c[6] = \"00\";
                d = 0;
               
                for (i=1;i <=6;i++){
                document.write(\"<tr>\")
                    for (m=1;m <=6;m++){       
                        for (n=1;n <=6;n++){   
                            d++;
                            colour = \'\"\' + c[i] + c[m] + c[n] + \'\"\';
                            document.write(\"<td value=\"+colour+\" style=\'cursor:hand;background-color=\"+colour+\"\' onClick=\'document.getElementById(this.value).selected=true\'>&nbsp;</td>\");
                        }
                    }
                    document.write(\"</tr>\")
                }

</script>
</tr>
</table>
</body>
</html>
Avatar billede kjoller Nybegynder
19. december 2001 - 09:43 #6
takker det var lige hvad jeg skulle bruge, takker begge 2 :o)
Avatar billede Slettet bruger
19. december 2001 - 14:28 #7
Det var så lidt!
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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