Javascript 从选择选项读取值

Javascript 从选择选项读取值,javascript,jquery,drop-down-menu,portlet,Javascript,Jquery,Drop Down Menu,Portlet,我有一个下面的场景 <select id="dropDown" onChange="this.options[this.selectedIndex].onclick();> <c:forEach items="" var="..."> <c:choose> <c:when test=""> <option id="<portlet:namespace />..." value="red" onclick="<portlet:

我有一个下面的场景

<select id="dropDown" onChange="this.options[this.selectedIndex].onclick();>
<c:forEach items="" var="...">
<c:choose>
<c:when test="">
<option id="<portlet:namespace />..." value="red" onclick="<portlet:namespace />SomeFunction(this.id, 'Contants.SOME_ID', '<c:out value="${some_value}"/>)">red</option>
</c:when>
<c:when test="">
<option id="<portlet:namespace />..." value="yellow" onclick="">yellow</option>
</c:when>
<c:when test="">
<option id="<portlet:namespace />..." value="blue" onclick="">blue</option>
</c:when>
</c:choose>
</c:forEach>
</select>
我有什么遗漏吗

编辑

我已经为onClick添加了示例函数,这就是为什么我在option字段中使用onClick。对于每一个函数,我会调用不同的函数。是否仍然可以获取所选选项的值

<portlet:namespace />SomeFunction(id, some_id, some_value) {

}
SomeFunction(id,some\u id,some\u值){
}

您在选项中的
onclick
不起任何作用。因为您使用的是jQuery,所以根本无法使用内联javascript

删除
onChange=“this.options[this.selectedIndex].onclick();
和所有
onclick=”“
,然后重试

$(function() {
  $('#dropDown').change(function() {
     alert($(this).val());
  });
});

使用jQuery时,不需要对每个
选项单击
onclick
,也不需要将
onChange
选中。
删除它们,然后使用
change
事件尝试

$('#dropDown').on('change', function() {
   var selected_item = this.value;
   alert( selected_item );
});
如果您试图在页面加载时更新
所选\u项
变量的值,则可以触发如下更改事件:

$('#dropDown').on('change', function() {
   var selected_item = this.value;
   alert( selected_item );
}).change(); // trigger the change event at page load

我使用onclick是有原因的,因为我为每个单击的函数调用不同的函数。请参阅我所做的编辑我需要保留onclick,因为我为每个情况调用不同的函数。请参阅edit@user525146然后尝试使用
单击
,但如果我删除了onChange,则删除
onchage
,而onClick不适用于该onChangeIE6、IE7和Chrome。
$('#dropDown').on('change', function() {
   var selected_item = this.value;
   alert( selected_item );
}).change(); // trigger the change event at page load