`
daohao123
  • 浏览: 56281 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

javascript 对多选列表的增删处理

阅读更多
//定义一获得ID方法
function $(id){
return document.getElementById(id);
}

//判断选中的选项是否存在于目标列表objSelect中。
function jsSelectIsExitItem(objSelect, objItemValue) {       
    var isExit = false;       
    for (var i = 0; i < $(objSelect).options.length; i++) {       
        if ( $(objSelect).options[i].value == objItemValue) {       
            isExit = true;       
            break;       
        }       
    }       
    return isExit;       
}   

//增加选中的选项。
function addOption(fromId,toId){
           var len=$(fromId).options.length;
           for(var i=0;i<len;i++){
              if($(fromId).options[i].selected){
                 if(jsSelectIsExitItem(toId,$(fromId).options[i].value)!=true){
                     var op = new Option($(fromId).options[i].text,$(fromId).options[i].value);
                     $(toId).options.add(op);
//$(fromId).options.remove(i);//同时删除选中的原始列表选项
                  }else{
                         alert("不能重复增加相同的选项。"+$(fromId).options[i].text);
                   }

                 }
             }

}

//增加全部选项
function addAll(fromId,toId){
          var len=$(fromId).options.length;
          for(var i=0;i<len;i++){
              if(jsSelectIsExitItem(toId,$(fromId).options[i].value)!=true){
                 var op = new Option($(fromId).options[i].text,$(fromId).options[i].value);
                 $(toId).options.add(op);
               }
           }
        // $(fromId).options.length=0;//增加选项同时删除原始选项列表
}

//移除选中的选项。
function delOption(fromId,toId){
          var len = $(toId).options.length-1;
   for(var i = len; i >= 0; i--){  
      if($(toId).options[i].selected){     
// var op = new Option($(toId).options[i].text,$(toId).options[i].value);//当原列表中的选项增加时也删除时用。
// $(fromId).options.add(op);
//$(toId).options.remove(i);
$(toId).options[i]=null;
  }
  }
}

//删除所有选项
function delAll(fromId,toId){
         /* var len=$(toId).options.length-1;//当原列表中的选项增加时也删除时用。
          for(var i = len; i >= 0; i--){
              if(jsSelectIsExitItem(fromId,$(toId).options[i].value)!=true){
               var op = new Option($(toId).options[i].text,$(toId).options[i].value);
                 $(fromId).options.add(op);
              }
          }*/
         $(toId).options.length=0;
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics