选择阻止按键更改

时间:2017-11-22 17:54:48

标签: javascript jquery html

我在'#mySelect'更改时有一些业务逻辑。当我单击选择或按任何按钮匹配选项时,将立即选择此选项(默认情况下不突出显示)。所以我需要保持默认的高亮逻辑并让我的业务登录onChange。通过我自己,我只实现了分离事件:

$('#mySelect').on('change keyup keydown', function(event) {
    if (event.type !== 'change' && event.which !== 13) {
        $(this).find(':selected').trigger('hover');          
        return false;
    }
    ...// onChange logic
})

但是现在,当我按下返回按钮或单击时,匹配选项没有突出显示并且onChange成功执行。 有什么建议可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我以不优雅的方式解决了这个问题:

var keyNotPressed = true;
if (event.type !== 'change' && event.which !== 13) {
   keyNotPressed = false;
}
if (event.type === 'change' && !keyNotPressed) {
....
}