Javascript 在html选择标记中的选项上添加单击事件

Javascript 在html选择标记中的选项上添加单击事件,javascript,jquery,html,Javascript,Jquery,Html,我有一个html下拉列表,定义为 <select name="evidence_selected"id="evidence_selected"> <option id="a">A</option> <option id="b">B</option> <option id="c">C</option> <option id="new">New</option> </select>

我有一个html下拉列表,定义为

<select name="evidence_selected"id="evidence_selected">
<option id="a">A</option>
<option id="b">B</option>
<option id="c">C</option>
<option id="new">New</option>
</select>
似乎点击事件不会触发。 如有任何关于代码片段的帮助,我们将不胜感激。
关于

选择使用更改事件

$('select').change(function () {
  if ($(this).val() === 'New') {
    // Handle new option
  }
});

这将在选择任何选项时触发。

我建议改为执行以下操作:

$('#evidence_selected').change(function(){
    if($(this).val() == "New"){
        $("#new_value").show();        
    } else {
        $("#new_value").hide();        
    }
});
这样,当select的值更改时,该函数将被触发,但仅当选择了new选项时,该函数才会显示new_值

此外,如果表单的ID为new_value,则应将其引用为$new_value.show;而不是$new_value.show;您缺少

尝试以下方法:

html


您可以在“选择并检查新选项”上使用“更改”事件。您应该关注“选择”标记:选项标记没有单击事件的事件处理程序这里的$new\u值是什么?OP已经在他的问题中提出了这个问题。它可以是他想要的任何东西。可能是一个id,可能是一个元素。。。我已经更新了AnswerIf语句。如果您的语句导致语法错误。轻微的输入错误。。。更正。。。谢谢大家,这是我从gurudeb$execution_selected中得到的最终解决方案。在'change'上,函数{var optionId=$'option:selected',this.attr'id';ifoptionId==='new'{//your action here};
$('#evidence_selected').change(function(){
    if($(this).val() == "New"){
        $("#new_value").show();        
    } else {
        $("#new_value").hide();        
    }
});
<select name="evidence_selected" id="evidence_selected">
<option id="a">A</option>
<option id="b">B</option>
<option id="c">C</option>
<option id="new">New</option>
</select>
$("#evidence_selected").change(function(){
    if($(this).val()=="new"){
        $("new_value").show();
    }
});
$("#evidence_selected").on('change', function() {
  var optionId = $('option:selected', this).attr('id');
  if(optionId === 'new') {
      // your action here
  }
});