【发布时间】:2017-02-02 17:24:16
【问题描述】:
我在输入字段中使用了两个事件 KEYPRESS 和 ONBLUR,当按下 ENTER 键时,它会触发 KEYPRESS 和 ONBLUR 也是如此。
代码:
<div id="text">
<input type="text" onblur="onBlur()" onkeypress="myFunction(event)">
</div>
window.myFunction = function(e) {
if (e.which == 13) {
document.getElementById("text").innerHTML = "text";
console.log("keypress");
}
}
window.onBlur = function() {
console.log("blur");
}
注意:
我需要处理按键以及 onblur 事件,但我一次只需要触发一个事件。
例如:
- 当我按下 enter 键时,应该会触发 myFunction。不是 onBlur。
- 当我在输入框外点击时,onBlur 函数应该会被调用。
问题:
当ENTER键被按下时如何防止ONBLUR事件。
您的建议将不胜感激
【问题讨论】:
-
只需重置属性:
onblur = "" -
查看我的更新答案以获取以更现代、更简洁的方式编写代码的解决方案和提示。
-
@ScottMarcus 谢谢
-
别忘了给我的答案投票,并将其标记为“the”答案。
标签: javascript html