webForumDet fria alternativet

Css i option

5 svar · 366 visningar · startad av The_L

The_LMedlem sedan okt. 2001154 inlägg
#1

Hejsan. Jag har skapat en select-lista med dynamiska options i javascript. Så här: document.Form1.sel.options[0] = new Option('nåt','nåt'); Hur kan man ange att varje enskild option ska ha en css?

The _L

m_soderlundMedlem sedan sep. 20024 733 inlägg
#2

Ska du ha en specifik stil för varje option?? Det rekommenderas inte.. För att styla option skriver du

option { color: #333; }

t.ex. :)

The_LMedlem sedan okt. 2001154 inlägg
#3

Ok, jag förstår att det inte rekommenderas. Jag förklarade nog lite dåligt.
Jag bygger upp en lista av options med javascript beroende på vilken radioruta en användare klickat på. O därför vill jag ju även kunna sätta stylesheet beroende på vilken radioruta som klickats på. För det är ev så att det kommer att användas olika stylesheets.

Vad jag förstår av din lösning så kommer samma stylesheet att användas?

//The_L

m_soderlundMedlem sedan sep. 20024 733 inlägg
#4

Okej. I så fall får du använda dig av document.getElementById och setAttribute och sedan sätta ett attribut till selectelementet du vill "styla". Om du har en dropdownlista som ser ut så här

<select id="test1">
<option>...</option>
<option>...</option>
</select>

så kan du vid onClick i en radioruta anropa denna funktion:

function swapStyle() {
oSelect=document.getElementById("test1");
oSelect.setAttribute("class","en_css-klass");
}

genom att skriva

onClick="swapStyle();"

i radiorutan.

Sedan får du i din CSS skapa klasser med de stilvärden du vill.

You got it? :)

m_soderlundMedlem sedan sep. 20024 733 inlägg
#5

Alternativt fungerar också

oSelect.setAttribute("style","border: solid 1px #333;");

till exempel. :)

The_LMedlem sedan okt. 2001154 inlägg
#6

Tack så mycket!
Precis vad jag skulle ha!

The_L

Genererad på 368 ms · cache AV · v20260730165559-full.f96bc7eb