如何获取click事件的id下拉列表

时间:2013-07-23 07:46:55

标签: javascript html5 jsp

这是我的jspPage。

<select id="class_Teacher" name="classTeacher" style="height:25px; width: 190px;" onchange="Class(this.id)">
<option id="1">Manager</option>    
<option id="2">Supervisor</option>
</select>

这是javascript

 function Class(str)
{
    alert(str);
}

我想在onc​​hange事件中获取Option的ID。谢谢:))

4 个答案:

答案 0 :(得分:4)

如果您尝试获取已选择的选项的ID

,则可以执行此操作
function Class(str)
{
    var select = document.getElementById("class_Teacher");
    var option = select.options[select.selectedIndex];
    alert(option.id);
}

答案 1 :(得分:1)

您的onchange事件将如下所示。只需删除.id,因为它将返回选择框本身的ID而不是选项

onchange="myFunction(this)"

和你的javascript函数一样,它将提醒所选选项的ID

function myFunction(ele){
   alert(ele.options[ele.selectedIndex].id);
}

细分ele表示选择框(dom对象)。 .options访问选择框中的选项。 []括号是访问特定选项的一种方式。与数组myArr[1]等类似,ele.selectedIndex返回表示所选选项的数字,即如果选择了第一个选项,则ele.selectedIndex将等同于0

答案 2 :(得分:1)

HTML(您应该使用“value”属性而不是“id”)

<select id="class_Teacher" name="classTeacher" style="height:25px; width: 190px;" onchange="onChange()">
<option id="1" value="ID1">Manager</option>    
<option id="2" value="ID2">Supervisor</option>
</select>

JS

var selectElement = document.getElementById("class_Teacher");
selectElement.onchange=function(){
    alert(selectElement.options[selectElement.selectedIndex].id); // id in the html element
    alert(selectElement.selectedIndex);                           // index starting from 0
    alert(selectElement.value);                                   // value of the selected element
};

Fiddle

答案 3 :(得分:0)

使用 rwydsgselsectedIndex 属性

GetElementByID