2016-03-03 71 views
2

如何使用JS設計樣式選項?假設我有這個:使用新選項和CSS樣式

var optionElementReference = new Option([text, [value, [defaultSelected, [selected]]]]); 

我希望每個選項都有自己的背景顏色。第一個選項紅色,第二個橙色,第三個黃色等。我該怎麼做?

+3

由於某些瀏覽器允許在這些元素上設置一些樣式規則,而另一些元素不允許這些元素,所以'option'元素的樣式非常不可靠。如果你想這樣做,你最好使用第三方插件來設計整個'select',比如Select2。 –

+0

通過'select'和leveraging'選項上的'.class'來更好地在CSS中而不是JS中設置樣式:nth-​​child()'選擇你想要的。否則,下面的Nikki基本上演示了一種完全在JS中完成的方法 - 您可以像設置任何其他元素上的樣式一樣設置'option'元素上的樣式。 – abluejelly

+0

嗯,謝謝,很高興知道 – JamAndJammies

回答

0

我不能告訴你這是如何跨瀏覽器,但它在鉻測試與小提琴的工作。

document.getElementById("s1").options[0] = new Option("x",0); 
document.getElementById("s1").options[1] = new Option("y",1); 
var z = new Option("z",2); 
z.setAttribute("style","background-color:red"); 
document.getElementById("s1").options[2] = z;