17 個の値/オプションを含む選択ボックスがあります。
<select id="_class" name="_class">
<option value="0"></option>
<option value="1">PREKG</option>
<option value="2">LKG</option>
<option value="3">UKG</option>
<option value="4">I</option>
<option value="5">II</option>
<option value="6">III</option>
<option value="7">IV</option>
<option value="8">V</option>
<option value="9">VI</option>
<option value="10">VII</option>
<option value="11">VIII</option>
<option value="12">IX</option>
<option value="13">X</option>
<option value="14">XI</option>
<option value="15">XII</option>
<option value="16">XIII</option>
</select>
今、5 から 8 までのオプションを削除しようとしています。そのために、次の JavaScript コードを使用しています。
<script type="text/javascript">
var _class = document.getElementById("_class");
for(var i=1; i < _class.length;i++) {
if(i>=5 && i<=8) {
_class.remove(i);
}
}
</script>
しかし、 for ループが実行されるたびにオプションの順序が変更されるため、期待どおりの結果が得られません。
どうすれば望ましい結果を得ることができますか?
ここにフィドルを添付しました。