Jquery 在动态选择不触发附加事件中选择第一个选项

Jquery 在动态选择不触发附加事件中选择第一个选项,jquery,option,Jquery,Option,我有一个使用Jquery选择选项的HTML页面,如下所示 <select id="select-stage" class="spinner" data-inline="true" > <option value="-1">-Select Stage-</option> </select> 这是因为您正在替换select中的第一个项目,该项目已被选中,因此不会触发更改事件 您需要将-Select Stage-选项保留为默认选项,并在其下方附

我有一个使用Jquery选择选项的HTML页面,如下所示

<select id="select-stage" class="spinner" data-inline="true" >
    <option value="-1">-Select Stage-</option>
</select>

这是因为您正在替换select中的第一个项目,该项目已被选中,因此不会触发更改事件

您需要将-Select Stage-选项保留为默认选项,并在其下方附加新选项。然后,当选择任何其他选项时,将触发更改事件

更新

要实现此目的,请修改代码以预先添加默认选项,如下所示:

var option=[];
$.each(myData, function(key, val) {
    sessionStorage.setItem(trim(val),trim(key));
    option.push('<option value="' + trim(key) + '">' + trim(val) + '</option>');
});
$('#select-stage')
    .html(option.join(''))
    .prepend('<option value="-1">-Select Stage-</option>')
    .val('-1');

您可能需要实现一个自定义小部件。如果您使用标准的选择输入,您试图实现的行为在浏览器中是不可靠的。如何将-select Stage-选项保留为默认值??如果您编辑问题以包含获取/设置选项的代码,我可以告诉你。这些值来自一个WCF服务,它由ajax调用,并作为JSON对象键、值对接收。这允许我选择用户选项。但这仍然不能解决我的问题,伙计!!现在,如果我选择-select Stage-选项,则不会产生任何效果!!!!我需要知道的是为什么第一个选项deosnot第一次没有被选中???
var option=[];
$.each(myData, function(key, val) {
    sessionStorage.setItem(trim(val),trim(key));
    option.push('<option value="' + trim(key) + '">' + trim(val) + '</option>');
});
$('#select-stage')
    .html(option.join(''))
    .prepend('<option value="-1">-Select Stage-</option>')
    .val('-1');