我正在使用jquery在更改选择标记时触发更改事件。我注意到如果select =“selected”包含在除第一个选项之外的任何选项中,则事件无法正常工作。它似乎太快了。例如,jquery代码是:
$('.test').change(function(){
alert('Handler for .change() called.');
});
和html代码是:
<select class="test">
<option value="option1">option1</option>
<option selected="selected" value="option2">option2</option>
</select>
此代码会在单击选择字段时立即触发更改事件,而不是在更改时触发。我可以通过简单地从选项中删除selected =“selected”或将其放在第一个选项中来解决这个问题。但我需要选择较低的选项。请帮忙!!!
答案 0 :(得分:0)
老实说,除了使用setTimeout(function(){...},0)之外,我找不到任何其他解决方案,因此更改事件可能就完成了。当我试图检查元素时,它解决了我的问题。