毎度毎度お世話になっております。
今回もよろしくお願いします。
###やりたいこと
https://jsfiddle.net/2r1w5sds/
上記はselectboxから選択したものを削除するプログラムなのですが、
一人を選択して削除すると綺麗に一人だけ削除されます。
しかし、二人以上選択して削除しようとするとなぜか選択した人数の半分の人しか削除されません
(先頭から6人選んだ場合先頭の三人が削除される)
if文が悪いのかと思いぬかして実行してみましたが、やはり上記と同じ動きをします。
なぜなのでしょうか?
どなたかご教授願います。
一応ソースコードも載せておきます。
html
1<div class="ib-box"> 2 <select id="rList" name="rList" multiple style="width: 140px;" size="10"> 3 <option value=1>aaa</option> 4 <option value=1>bbb</option> 5 <option value=1>ccc</option> 6 <option value=1>ddd</option> 7 <option value=1>eee</option> 8 <option value=1>fff</option> 9 <option value=1>ggg</option> 10 <option value=1>hhh</option> 11 <option value=1>iii</option> 12 </select> 13 14 <input type="button" value="<削除" onclick="OnceDelete()" /> 15 <br> 16</div>
javascript
1 function OnceDelete() { 2 3 var i, rList = document.getElementById('rList'), 4 rListoptions = rList.options, 5 rl = rListoptions.length, 6 option; 7 8 for (i = 0; i < rl; i++) { 9 if (rListoptions[i].selected === true) { 10 rList.remove(i); 11 } 12 } 13}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/21 07:30