【问题标题】:Execute function on Enter [duplicate]Enter上执行功能[重复]
【发布时间】:2016-02-01 17:30:21
【问题描述】:

如何在文本字段上按 Enter 键时执行一些代码?

我的方法没有任何作用:

<script>
textfield.onkeydown = function(e) {
    if (e.keyCode == 13) {
        alert("abc");
    }
}
</script>

<input type="text" id="textfield">

PS:我不想使用 JQuery。

【问题讨论】:

  • 不,它没有。接受的答案是 vanilla/plain js - 但是,它使用 2 种方法来获取事件和 2 种方法来获取 keyCode,这是在不使用 jQuery 时由浏览器差异所要求的。你需要的是在元素在 DOM 中可用之后进行分配

标签: javascript html keyboard-events


【解决方案1】:

将脚本放在文本字段下方,使其首先存在于 DOM 中:

<input type="text" id="textfield">
<script>
textfield.onkeydown = function(e) {
    if (e.keyCode == 13) {
        alert("abc");
    }
}
</script>

【讨论】:

  • 或包裹在window.onload中
  • @mplungjan 是的,这也是一个选项
  • 这也不适用于所有浏览器。查看完整事件处理的链接答案
猜你喜欢
  • 1970-01-01
  • 2012-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-09-23
  • 1970-01-01
  • 2023-03-25
  • 2014-07-01
相关资源
最近更新 更多