11. april 2003 - 10:05
Der er
29 kommentarer og 1 løsning
Skøn blanding
Hej Eksperter, Jeg har en form i en servlet som ser således ud. Ideen er at det sidste man har valgt skal forblive valgt indtil man vælger noget andet. Det virker også :-), men hvordan ændre jeg i samme ombæring baggrundsfarven på det som er valgt? Jeg ønsker at gøre det for at gøre det mere tydeligt hvad der er valgt buffer.append("<tr style=\"height:30px;\"><td style=\"text-align:left;border-right:ridge;border-width:thin;\">"); buffer.append("<form method=\"post\" name=\"editpage\" action=\"Editpage\" style=\"display:inline;\">"); buffer.append("<select style=\"width:90px;\" name=\"page\" onChange=\"document.editpage.submit();\">"); buffer.append("<option value=\"start\" "+(page.equals("start")?"Selected":"")+">Start"); buffer.append("<option value=\"news\" "+(page.equals("news")?"Selected":"")+">News"); buffer.append("<option value=\"mrtlz\" "+(page.equals("mrtlz")?"Selected":"")+">the Mrtlz"); buffer.append("<option value=\"credit\" "+(page.equals("credit")?"Selected":"")+">Credit"); buffer.append("<option value=\"contact\" "+(page.equals("contact")?"Selected":"")+">Contact"); buffer.append("<option value=\"guestbook\" "+(page.equals("guestbook")?"Selected":"")+">Guestbook"); buffer.append("</select>"); buffer.append("</form>");
Annonceindlæg fra inspirit365
11. april 2003 - 10:26
#1
<form method="post" name="editpage" action="Editpage" style="display:inline;"> <select class="dropbox" name="page" onChange="document.editpage.submit();"> <option value="start" Selected>Start <option value="news" >News <option value="mrtlz" >the Mrtlz <option value="credit" >Credit <option value="contact" >Contact <option value="guestbook" >Guestbook </select> </form>
11. april 2003 - 10:27
#2
er f.eks outputtet hvis Start er valgt
11. april 2003 - 10:28
#3
<ole> Jamen, det er der jo ingen, der når at se. Formen submittes på onchange - og så forsvinder formen :) /mvh </bole>
11. april 2003 - 10:30
#4
Ahaaaa .... :) Så skal du skrive det ind i servelet'en: <option style="background-color:#ff0000" value="start" Selected>Start</option> Husk i øvrigt at afslutte dine options :) /mvh
11. april 2003 - 10:31
#5
.... og tekstfarven sættes naturligvis med 'color' :)
11. april 2003 - 10:39
#6
Nej, ideen er at kun det der er valgt skal have en anden baggrundsfarve :-)
11. april 2003 - 10:41
#7
Prøv det nu ... så kan du se, det også er tilfældet. Det er altid en god idé at teste de løsninger, man får
11. april 2003 - 10:42
#8
Det har jeg gjort :-)
11. april 2003 - 10:43
#9
11. april 2003 - 10:46
#10
Ellers tak .... det kunne _aldrig_ falde mig ind at gå ind på en usikker side, jeg ikke selv har lavet. Jeg kan dog alligevel slå fast, du må have lavet en fejl - for det virker :) /mvh
11. april 2003 - 10:46
#11
buffer.append("<option style=\"background-color:#ff0000\" value=\"start\" "+(page.equals("start")?"Selected":"")+">Start\n");
11. april 2003 - 10:47
#12
jeg kan da hurtigt stå ssl fra :-) Det har jeg mest sat på for sjov :-)
11. april 2003 - 10:48
#13
Det må du meget gerne, tak :)
11. april 2003 - 10:48
#14
øjeblik
11. april 2003 - 10:51
#15
sådan
11. april 2003 - 10:55
#16
Det går da udmærket med baggrundsfarven :)
11. april 2003 - 10:56
#17
baggrundsfarven er sort, men den skal ændres for det menupunkt der er valgt.
11. april 2003 - 10:57
#18
Nå .... den er ikke sort hos mig :)
11. april 2003 - 10:57
#19
Prøv evt. at tømme din cashe
11. april 2003 - 11:02
#20
nej de to første punkter i den første menu skulle gerne have en rød baggrund. Som du kan se er det sidste du vælger selected. Jeg vil gerne have baggrundsfarven ændret for kun det punkt der er valgt :-)
11. april 2003 - 11:02
#21
Hvilken browser bruger du ?
11. april 2003 - 11:05
#22
Både NS og IE ... i NS viser den dog ikke baggrundsfarven i selecten, når den er foldet sammen. Det kan du ikke lave om på. Når den er foldet ud, er den fint rød :)
11. april 2003 - 11:06
#23
Nu tror jeg jeg ved hvad du mener. Det jeg vil kan sikkert ikke lade sig gøre. Jeg vil jo have 2 forskellige baggrunde på det som er valgt og det der står i dropboksen. Det kan man nok ikke
11. april 2003 - 11:08
#24
Det var også bare en tanke :-) Tak for hjælpen
11. april 2003 - 11:19
#25
En muligehed kunne vel være: <script type="text/JavaScript"> function setCol() { s = document.f.s; for (i=0; i<s.length; i++) { if (i!=s.selectedIndex) { s.options[i].style.backgroundColor = "#000000"; s.options[i].style.color = "#ffffff"; } else { s.options[i].style.backgroundColor = "#ff0000"; s.options[i].style.color = "#000000"; } } } window.onload = setCol; </script> <form name="f"> <select name="s" onchange="setCol()"> <option>bla 1</option> <option>bla 2</option> <option>bla 3</option> <option>bla 4</option> </select> </form>
11. april 2003 - 11:22
#26
Nej, det funker zq heller ikke i NS :(
11. april 2003 - 11:26
#27
Det gør ikke så meget. Jeg har lukket mine options tags
11. april 2003 - 11:36
#28
Okay ... denne her virker i NS og IE. Måske ikke så 'sexy', men den kan sikkert slankes - den er lidt hurtigt kastet sammen: <script type="text/JavaScript"> function setCol() { s = document.f.s; for (i=0; i<s.length; i++) { if (document.getElementById && !document.all) { s.style.backgroundColor = "#ff0000"; s.style.color = "#000000"; if (i!=s.selectedIndex) { s.options[i].setAttribute("style", "background-color:#000000;color:#ffffff"); } else { s.options[i].setAttribute("style", "background-color:#ff0000;color:#000000"); } } else { if (i!=s.selectedIndex) { s.options[i].style.backgroundColor = "#000000"; s.options[i].style.color = "#ffffff"; } else { s.options[i].style.backgroundColor = "#ff0000"; s.options[i].style.color = "#000000"; } } } } window.onload = setCol; </script>
11. april 2003 - 11:50
#29
helt perfekt ;-)
11. april 2003 - 11:53
#30
fino :)
Vi tilbyder markedets bedste kurser inden for webudvikling