使用Jquery .change()事件从Select Box中丢失焦点

时间:2011-09-02 19:50:14

标签: jquery asp.net-mvc asp.net-mvc-2

我正在使用下拉菜单,在您从下拉列表中选择内容后会显示多个表单字段。我已经使用jquery绑定了下拉列表以检测更改,但是,在触发.change之前,该框必须“失去焦点”。有什么方法可以解决这个问题吗?

    $("#EmployeeSelected").change(function () {
        alert('hi');
    });

2 个答案:

答案 0 :(得分:0)

如果您想在下拉列表中使用键盘向上/向下键时触发更改事件,则可以使用keypresskeydown事件进行连接。 IE中存在一个错误,当使用箭头循环显示下拉选项时会触发change事件,但这不是默认行为,而且很危险。当使用向上/向下键未触发更改事件时,此行为与其他浏览器不同。

答案 1 :(得分:0)

似乎不需要失去焦点,至少在传统变革中是这样。如果您正在使用其他形式的更改,即击键,您可能需要考虑将其他事件绑定到它。

只要您按照传统意义(单击选项)选择它,它就会闪现。如果您使用其他方法,例如键盘输入,则需要将适当的事件绑定到它,例如keypresskeydown等。

Working Demo