select元素我有JS是這樣的:過濾基於另一個不工作
$(document).ready(function() {
$("#DDL1").change(function() {
var thisValue = $(this).val();
var $optGroups = $("#DDL2 optgroup");
$optGroups.hide();
switch (thisValue) {
case "11":
alert(thisValue);
$optGroups.filter("[label='label1']").show();
break;
}
});
});
基本上,基於第一DDL的選擇。我想過濾:第二個..
當我運行這個,thisValue
= 11,這是我想要的。但是$optGroups
仍然會顯示所有的可選值。而我只希望顯示標籤爲label1
的optgroup下的值。
任何解釋我可能做錯了什麼?
如果你的'DDL1'是一個'select'元素,那麼原因可能是'optgroup'和'option'元素被瀏覽器以特殊方式處理,並且可能無法'顯示'/'通過CSS隱藏它們(jQuery所做的)。我認爲解決方案是臨時「移除」你不想展示的「optgroup」。 –
@ZoltánTamási好的,除了我想展示的標籤之外,還有一種方法可以刪除所有其他標籤,而不必明確指定所有標籤? –