1

オプションの非常に長いリストがあり、optgroup で区切られています。クリックしたときに各 optgroup の子を表示/非表示にしようとしています:

$("optgroup").toggle(function(){
    $(this).children().show();
}, function() {
    $(this).children().hide();
});

オプションリスト:

<form>
<select>
<optgroup label="a">
<option id="a1">a1</option>
<option id="a2">a2</option>
<option id="a3">a3</option>
<option id="a4">a4</option>
</optgroup>

<optgroup label="b">
<option id="b1">b1</option>
<option id="b2">b2</option>
<option id="b3">b3</option>
<option id="b4">b4</option>
</optgroup>
</select>
</form>

optgroup をクリックしても、子の表示が切り替わりません。

4

1 に答える 1

0

optgroup を選択できないため、トグル イベントは実行されません。

2 つの select 要素を使用することをお勧めします。1 番目の optgroup を選択してから、関連するオプションで 2 番目を更新します。

于 2012-12-20T10:59:02.463 に答える