【发布时间】:2017-06-24 01:47:41
【问题描述】:
我有一个我想在用户按下 del 键时按下的按钮。我有这个:
document.getElementById('result').onkeypress=function(e){
//This works, when the user presses enter, submitbtn is clicked
if(e.keyCode==13){
document.getElementById('submitbtn').click();
}
//This doesn't, but it is the same as the code above
else if(e.keyCode==46){
document.getElementById('clrbtn').click();
}
}
这是我的 HTML:
<input id="result" type="number" min="0" placeholder="0">
<button id="submitbtn" onclick="submit()">Submit</button>
<button id="clrbtn" onclick="clr()">Clear</button>
我尝试过e.which 和e.preventDefault(),但都不起作用。我查看了CTRL keyCode (17) not working in JavaScript?,并检查了是否有delKey,类似于ctrlKey,但没有。
如何使我确定为 46 的删除 keyCode 与我的代码一起使用?有没有更好的方法?
提前致谢!
【问题讨论】:
-
您的语法/逻辑似乎正确——您可以发布您的 HTML 代码吗?
-
你确定不是
8 -
@epascarello 8 是退格键
-
我认为你需要使用keydown
-
相当肯定
onkeypress禁止删除键;尝试将其更改为onkeydown。
标签: javascript html keycode