javascript - 如何在 <input> 字段中按 Enter 键时执行功能?

标签 javascript events input listener

我有一个输入,我只想添加一个事件监听器,以便在输入聚焦时按 Enter 键时激活一个功能。如何用纯 JS 做到这一点?

现在我有:

HTML:

Enter your wage:<input type="text" id="wage" value ="" size=20>
<button id="sub">Submit</button>

JavaScript:

var wage = document.getElementById("wage");
wage.addEventListener("change", validate);

var btn = document.getElementById("sub");
btn.addEventListener("click", validate);

所以基本上,当我单击或更改文本时,函数 validate() 就会激活,但我想通过按 Enter 来调用它。

最佳答案

你可以使用这个:

var wage = document.getElementById("wage");
wage.addEventListener("keydown", function (e) {
    if (e.code === "Enter") {  //checks whether the pressed key is "Enter"
        validate(e);
    }
});

function validate(e) {
    var text = e.target.value;
    //validation of the input...
}

<强> Live demo here

关于javascript - 如何在 &lt;input&gt; 字段中按 Enter 键时执行功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16011312/

相关文章:

javascript - JQuery - 附加链接不起作用

javascript - 在新标签页中打开 DIV?

javascript - 单个用户操作触发两个事件 - 第二个事件未触发

javascript - React 实时更新输入文本表单

python - 有没有办法使用文件作为输入来更改Python中的cwd?

c++ - 输入、输出和\n

javascript - 突出显示背景 Pane 大于链接对象且无填充的链接

javascript - Webpack postcss-loader 在传递函数时不工作

javascript - 我可以在 Javascript 中为我创建的对象创建自定义事件吗?

php - 使用PHP文件在服务器之间自动存储和发送JSON数据