獲取select元素的選中項:
在HTML頁面中,有時候會獲取當前select元素中所選中的那個值和顯示值。下面是一個例子:
<tr>
<th scope="row" width="15%" nowrap >*目標字段</th>
<td><select name="idMbzd" style="width:25%" onchang=”on_idmbzd_change();”>
<option value=”1”>eg1</option>
<option value=”2”>eg2</option>
<option value=”3”>eg2</option>
</select>
</td>
</tr>
<script>
function on_idmbzd_change(){
var sel_obj = document.getElementByIdx("idMbzd ");
var index = sel_obj.selectedIndex;
alert(sel_obj.options[index].value);
alert(sel_obj.options[index].text);
}
</script>
在這里,關鍵用到select對象的selectedIndex屬性。表示被選中那個元素的索引,從0開始。
當然也可以遍歷select元素的所有值。如下:
<script>
var len = sel_obj.options.length;
for(i = 0 ;i<len ;i++){
var value = sel_obj.options[i].value;
var view_value = sel_obj.options[i].text
}
</script>
也多說一下,可以動態添加他的元素,如下:
<script>
var voption = document.createElement("OPTION");
voption.value = "4";
voption.text. = "eg4";
sel_obj.add(voption);
</script>
設置select元素的選中項:
方法有兩種。
第一種通過<select>的屬性來設置選中項,此方法可以在動態語言如php在后台根據需要控制輸出結果。
< select id = "sel" >
< option value = "1" >1</ option >
< option value = "2" selected = "selected" >2</ option >
< option value = "3" >3</ option >
</ select >
第二種為通過前端js來控制選中的項:
< script type = "text/javascript" >
function change(){
document.getElementById("sel")[2].selected=true;
}
</ script >
< select id = "sel" >
< option value = "1" >1</ option >
< option value = "2" >2</ option >
< option value = "3" >3</ option >
</ select >
< input type = "button" value = "修改" onclick = "change()" />
獲取<select>標簽選中項文本的js代碼為:
var val = document.all.Item.options[document.all.Item.selectedIndex].text
var i=document.getElementById( ‘sel‘ ).options[document.getElementById( ‘sel‘).selectedIndex].value;
一些其它操作<select>標簽的技巧如下:
1)動態創建select
function createSelect(){
var mySelect = document.createElement( "select" );
mySelect.id = "mySelect" ;
document.body.appendChild(mySelect);
}
2)添加選項option
function addOption(){
//根據id查找對象,
var obj=document.getElementById( ‘mySelect‘ );
//添加一個選項
obj.add( new Option( "文本" , "值" ));
}
3)刪除所有選項option
function removeAll(){
var obj=document.getElementById( ‘mySelect‘ );
obj.options.length=0;
}
4)刪除一個選項option
function removeOne(){
var obj=document.getElementById( ‘mySelect‘ );
//index,要刪除選項的序號,這里取當前選中選項的序號
var index=obj.selectedIndex;
obj.options.remove(index);
}
5)獲得選項option的值
var obj=document.getElementById( ‘mySelect‘ );
var index=obj.selectedIndex; //序號,取當前選中選項的序號
var val = obj.options[index].value;
6)獲得選項option的文本
var obj=document.getElementById( ‘mySelect‘ );
var index=obj.selectedIndex; //序號,取當前選中選項的序號
var val = obj.options[index].text;
7)修改選項option
var obj=document.getElementById( ‘mySelect‘ );
var index=obj.selectedIndex; //序號,取當前選中選項的序號
var val = obj.options[index]= new Option( "新文本" , "新值" );
8)刪除select
function removeSelect(){
var mySelect = document.getElementById( "mySelect" );
mySelect.parentNode.removeChild(mySelect);