无法完全删除select下所有option的问题?

我的代码是:
  /*
    *删除全部的select的option
   */
  function removeAll(){
   var _selectId = "select";
   var _select =document.getElementById(_selectId);
   for(var i=0;i<_select.options.length;i++){
     _select.options.remove(i);
   }
  }
  这样造成了只有单数索引没有被删除,最后经同事提示,select的index是会发生变化的,例如:
    索引:0     1      2      3       4    
      值  :aa    ab     ac     ad      ae
  当我删除了索引为0的aa后,数据的排列是:
      索引:0     1      2      3
      值  :ab    ac     ad    ae
  所以上面的i递增的时候就把单数给漏掉了。
  解决问题的班房有两种:
     代码1:
       function removeAll(){
        var _selectId = "select";
        var _select =document.getElementById(_selectId);
        for(var i=0;i<_select.options.length;){
          _select.options.remove(i);
        }
       }
     代码2:
       function removeAll(){
         var _selectId = "select";
         var _select =document.getElementById(_selectId);
         for(var i=select.options.length;i>0;i--){
           _select.options.remove(i-1);
         }
       }

你可能感兴趣的:(select option)