腾讯云618限量抢购

JavaScript onkeypress 事件:按下或按住一个键盘按键

最后更新:2012-05-19 12:35阅读:10993

JavaScript onkeypress 事件

用户按下或按住一个键盘按键时会触发 onkeypress 事件。

注意:onkeypress 事件与 onkeydown 事件有些细微差别,onkeypress 事件不做相应功能键按下的处理。具体可将下面的示例更改为 onkeydown 事件后,可输入 !@#$ 等特殊字符即可体会出二者之间的差别。

提示

Internet Explorer/Chrome 浏览器使用 event.keyCode 取回被按下的字符,而 Netscape/Firefox/Opera 等浏览器使用 event.which。

利用 onkeypress 事件只允许输入数字

下面是一个利用 onkeypress 事件只允许用户在表单域输入数字的例子:

<html>
<head>
<script>
function checkNumber(e)
{
    var keynum = window.event ? e.keyCode : e.which;
    //alert(keynum);
    var tip = document.getElementById("tip");
    if( (48<=keynum && keynum<=57) || keynum == 8 ){
        tip.innerHTML = "";
        return true;
    }else {
        tip.innerHTML = "提示:只能输入数字!";
        return false;
    }
}   
</script> 

</head>
<body>
<div>请输入数字:<input type="text" onkeypress="return checkNumber(event);" />
<span id="tip"></span>
</div> 
</body>
</html>

event.keyCode/event.which 得到的是一个按键对应的数字值(Unicode 编码),常用键值列于 onkeydown 事件一节中。例子中对 8 的值做特殊处理,是为了在文本域中支持退格(Backspace)键。


本章节内容共分 22 部分:
  1. 1. JavaScript 事件
  2. 2. JavaScript onclick 事件:鼠标点击页面某个对象
  3. 3. JavaScript ondblclick 事件:鼠标双击页面某个对象
  4. 4. JavaScript onmousedown 事件:鼠标任何一个按键被按下
  5. 5. JavaScript onmouseup 事件:鼠标任何一个按键被松开
  6. 6. JavaScript onmouseover 事件与 onmouseout 事件:鼠标指针移动到对象上或离开对象
  7. 7. JavaScript onkeydown 事件:键盘上某个按键被按下
  8. 8. JavaScript onkeypress 事件:按下或按住一个键盘按键
  9. 9. JavaScript onkeyup 事件:键盘按键被松开
  10. 10. JavaScript onblur 事件:页面元素失去焦点
  11. 11. JavaScript onfocus 事件:页面元素获得焦点
  12. 12. JavaScript onchange 事件:表单文本域或选择域发生改变
  13. 13. JavaScript onsubmit 事件:表单被提交
  14. 14. JavaScript onreset 事件:表单被重置
  15. 15. JavaScript onload 事件:页面或图像加载完成后
  16. 16. JavaScript onunload 事件:关闭页面或页面被改变为其他页面
  17. 17. JavaScript onerror 事件:加载页面或图像时发生错误
  18. 18. JavaScript onresize 事件:当浏览器窗口或 HTML 对象改变大小
  19. 19. JavaScript onscroll 事件:滚动条发生滚动及利用 onscroll 来实现 返回顶部 效果
  20. 20. JavaScript onselect 事件:文本框中的文本被选中
  21. 21. JavaScript oncopy 事件:文本被复制及利用 oncopy 实现拷贝内容时增加版权信息
  22. 22. JavaScript oncut 事件与 onpaste 事件:文本域文本被剪切或粘贴(禁止粘贴实例)
腾讯云618限量抢购