2014-04-10 41 views
2

我有一個<select>對象,我想要切換一些<option> s,我通過使用jQuery .hide()函數來實現。它的工作原理在Chrome/Firefox中的/ etc但不是在IE 9顯示:none無法在IE 9中工作

小提琴鏈接:http://jsfiddle.net/Cz4cm/11/

HTML:

<select> 
    <option>Select a Term...</option> 
    <option class="0" value="0" style="display:none;">Option0</option> 
    <option class="1" value="1">Option1</option> 
    <option class="2" value="2">Option2</option> 
    <option class="3" value="3">Option3</option> 
    <option class="4" value="4">Option4</option> 
    <option class="5" value="5">Option5</option> 
    <option class="6" value="6">Option6</option> 
    <option class="7" value="7">Option7</option> 
</select> 

我想切換在不同的點,以便完全刪除從HTML這些值DOM不是一個選項。我只想切換他們的知名度。

任何人都知道一個解決方法/無論我需要做什麼來讓.hide()在IE 9中工作?

謝謝。

回答

4

不幸的是,HTML規範沒有定義選項元素的樣式。

有些瀏覽器允許它,有些則不允許。但這樣做不符合標準。

http://msdn.microsoft.com/en-us/library/ms535877%28v=vs.85%29.aspx

除背景色和顏色,通過風格對象的選項元素應用的樣式設置將被忽略。此外,直接應用於單個選項的樣式設置會覆蓋整個應用於包含select元素的樣式設置。

+0

謝謝。我最終使用了禁用的屬性。如果完全隱藏該選項本來是很好的,但這是第二好的選擇 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#attr-disabled – migreva