输入更改事件在输入密钥不在IE中工作

时间:2016-07-28 17:14:13

标签: javascript jquery

$("#inputBoxWidth").change(function() {
  var curValue = $("#inputBoxWidth").val();
  alert(curValue);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="text" id="inputBoxWidth">
</form>

当我在所有浏览器中按Enter键时,除了IE之外,我的警报功能正常工作。在IE中,我必须在输入元素外部单击,以便输入失去焦点而不是它的工作原理。当按下输入警报弹出窗口显示当前值时,我需要IE的行为与其他浏览器相同。如何做到这一点?

2 个答案:

答案 0 :(得分:1)

https://developer.mozilla.org/en-US/docs/Web/Events/change

  

根据QuirksMode Chrome和Firefox已经兼容了一段时间,但IE9和早期版本的IE10都得到了不完全的支持。

您必须编写一些条件代码,明确检查浏览器是否为IE并编写解决方法。

答案 1 :(得分:1)

您可以使用keyup事件。

这给了你:

$("#inputBoxWidth").keyup(function() { // Your code });

不要使用keydown事件,因为如果你想获得输入的值,它会在按下键之前给出值。

:)