我有一個非常簡單的形式,我想在另一個選擇字段細化它時隱藏選擇選項。如何隱藏html表單選擇選項?
目前我已經嘗試dispay: none
作爲我的選項上的內聯樣式,但它沒有隱藏它。
我正在使用chrome,這需要跨所有瀏覽器工作。任何人都可以擺脫一些光,因爲我似乎無法在谷歌上找到很多東西。
請參閱我的問題在這裏生活...... http://jsfiddle.net/3vPgY/5/
在這裏,我當前的代碼...
<form>
<select id="refine">
<option class="default" value="0">Please refine...</option>
<option value="green">Green</option>
<option value="blue">Blue</option>
<option value="red">Red</option>
</select>
<select id="everything" disabled="disabled">
<option class="default" value="">Please select</option>
<option class="green" value="green-sel">Show only if Green selected</option>
<option class="green" value="green-sel">Show only if Green selected</option>
<option class="green" value="green-sel">Show only if Green selected</option>
<option class="blue" value="blue-sel">Show only if Blue selected</option>
<option class="blue" value="blue-sel">Show only if Blue selected</option>
<option class="blue" value="blue-sel">Show only if Blue selected</option>
<option class="red" value="red-sel">Show only if Red selected</option>
<option class="red" value="red-sel">Show only if Red selected</option>
<option class="red" value="red-sel">Show only if Red selected</option>
</select>
</form>
我的jQuery腳本是suppost過濾第二個下拉...
$('#refine').change(function() {
var refine = $('option:selected', this).val().replace(/ /g, "-");
if (refine != 0) {
$('#everything').removeAttr('disabled');
$('#everything option:not(.default)').css('display', 'none');
$('#everything .' + refine).css('display', 'block');
} else {
$('#everything').attr('disabled', 'disabled');
$('#everything option:not(.default)').css('display', 'none');
}
});
正如你可以看到我只想隱藏選項,而不是刪除。如果第一個下拉選項發生變化,我就可以以某種方式將它們帶回來。
任何建議將是最有幫助的 - 或者也許是解決辦法。
感謝