对于下拉菜单selectedIndex属性返回选中的序号。如果要多选,则创建一个数组用来存放选中的项,遍历整个下拉菜单,如果选中则用push方法压入数组。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>下拉菜单,通用</title>
<script language="javascript">
function getSelectValue(Box){
var strTemp;
var oForm = document.forms["myForm1"];
var oSelectBox = oForm.elements[Box];
//alert(oSelectBox.type);
//根据参数相应的选择下拉菜单判断是单选还是多选
if(oSelectBox.type == "select-one"){
var iChoice = oSelectBox.selectedIndex; //获取选中项
strTemp="单选,您选中了" + oSelectBox.options[iChoice].text;
}
else{
var aChoices = new Array();
//遍历整个下拉菜单
for(var i=0;i<oSelectBox.options.length;i++){
if(oSelectBox.options[i].selected==true) //如果被选中
aChoices.push(oSelectBox.options[i].text); //压入到数组中
}
strTemp="多选,您选了:" + aChoices.join(); //输出结果
}
document.getElementById("strSelect").innerHTML=strTemp;
}
</script>
</head>
<body>
<form method="post" name="myForm1">
星座:<br />
<select id="constellation1" name="constellation1">
<option value="Aries" selected="selected">白羊</option>
<option value="Taurus">金牛</option>
<option value="Gemini">双子</option>
<option value="Cancer">巨蟹</option>
</select>
<input type="button" onclick="getSelectValue('constellation1')" value="查看选项" />
<br />
<select id="constellation2" name="constellation2" multiple="multiple" style="height:120px;">
<option value="Aries">足球</option>
<option value="Taurus">排球</option>
<option value="Gemini">篮球</option>
<option value="Cancer">棒球</option>
</select>
<input type="button" onclick="getSelectValue('constellation2')" value="查看选项" />
<p><span id="strSelect"></span></p>
</form>
</body>
</html>