Js操作Select大全

鴨脖發表於2013-04-27

一、查詢

// 1.得到select的當前選中項的value    
var currSelectValue = document.all.objSelect.value;    
       
// 2.得到select的當前選中項的text    
var currSelectText = document.all.objSelect.options[document.all.objSelect.selectedIndex].text;    
       
// 3.得到select的當前選中項的Index    
var currSelectIndex = document.all.objSelect.selectedIndex;    

二、判斷

判斷select選項中 是否存在Value="paraValue"的Item  

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;        
}  

三、設定

// 1.向select選項中 加入一個Item        
function jsAddItemToSelect(objSelect, objItemText, objItemValue) {        
    //判斷是否存在        
    if (jsSelectIsExitItem(objSelect, objItemValue)) {        
        alert("該Item的Value值已經存在");        
    } else {        
        var varItem = new Option(objItemText, objItemValue);      
        objSelect.options.add(varItem);     
        alert("成功加入");     
    }        
}    


// 2.修改select選項中 value="paraValue"的text為"paraText"        
function jsUpdateItemToSelect(objSelect, objItemText, objItemValue) {        
    //判斷是否存在        
    if (jsSelectIsExitItem(objSelect, objItemValue)) {        
        for (var i = 0; i < objSelect.options.length; i++{        
            if (objSelect.options[i].value == objItemValue) {        
                objSelect.options[i].text = objItemText;        
                break;        
            }        
        }        
        alert("成功修改");        
    } else {        
        alert("該select中 不存在該項");        
    }        
}        
   
// 3.設定select中text="paraText"的第一個Item為選中        
function jsSelectItemByValue(objSelect, objItemText) {            
    //判斷是否存在        
    var isExit = false;        
    for (var i = 0; i < objSelect.options.length; i++{        
        if (objSelect.options[i].text == objItemText) {        
            objSelect.options[i].selected = true;        
            isExit = true;        
            break;        
        }        
    }              
    //Show出結果        
    if (isExit) {        
        alert("成功選中");        
    } else {        
        alert("該select中 不存在該項");        
    }        
}        
   
// 4.設定select中value="paraValue"的Item為選中    
document.all.objSelect.value = objItemValue;   

  //5.設定select中selectedIndex=index 為選中 

  var currSelectIndex = document.all.objSelect.selectedIndex;   
  document.all.objSelect.selectedIndex = currSelectIndex ; 

 

 

四、刪除

從select選項中 刪除一個Item 
刪除select中選中的項 


// 1.從select選項中 刪除一個Item        
function jsRemoveItemFromSelect(objSelect, objItemValue) {        
    //判斷是否存在        
    if (jsSelectIsExitItem(objSelect, objItemValue)) {        
        for (var i = 0; i < objSelect.options.length; i++{        
            if (objSelect.options[i].value == objItemValue) {        
                objSelect.options.remove(i);        
                break;        
            }        
        }        
        alert("成功刪除");        
    } else {        
        alert("該select中 不存在該項");        
    }        
}    
   
   
// 2.刪除select中選中的項    
function jsRemoveSelectedItemFromSelect(objSelect) {        
    var length = objSelect.options.length - 1;    
    for(var i = length; i >= 0; i--){    
        if(objSelect[i].selected == true){    
            objSelect.options[i] = null;    
        }    
    }    
}      
 

// 3.從下拉選單中刪除選項

 

<script type="text/javascript">
    function removeOption(){
        var x=document.getElementById("mySelect");
        x.remove(x.selectedIndex);
    }
</script>

 

 

 


       
// 清空select的項    
document.all.objSelect.options.length = 0

 

參考

http://www.w3cschool.cn/htmltags/tag-select.html

相關文章