onkeypress 事件

定义和用法

onkeypress 事件会在键盘按键被按下并释放一个键时发生。

语法

  1. onkeypress="SomeJavaScriptCode"
参数 描述
SomeJavaScriptCode 必需。规定该事件发生时执行的 JavaScript。

支持该事件的 HTML 标签:

  1. <a>, <acronym>, <address>, <area>, <b>, <bdo>, <big>, <blockquote>, <body>,
  2. <button>, <caption>, <cite>, <code>, <dd>, <del>, <dfn>, <div>, <dt>, <em>,
  3. <fieldset>, <form>, <h1> to <h6>, <hr>, <i>, <input>, <kbd>, <label>, <legend>,
  4. <li>, <map>, <object>, <ol>, <p>, <pre>, <q>, <samp>, <select>, <small>,
  5. <span>, <strong>, <sub>, <sup>, <table>, <tbody>, <td>, <textarea>, <tfoot>,
  6. <th>, <thead>, <tr>, <tt>, <ul>, <var>

支持该事件的 JavaScript 对象:

  1. document, image, link, textarea

提示和注释

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

实例

在本例中,用户无法在输入框中键入数字:

  1. <html>
  2. <body>
  3. <script type="text/javascript">
  4. function noNumbers(e)
  5. {
  6. var keynum
  7. var keychar
  8. var numcheck
  9.  
  10. if(window.event) // IE
  11. {
  12. keynum = e.keyCode
  13. }
  14. else if(e.which) // Netscape/Firefox/Opera
  15. {
  16. keynum = e.which
  17. }
  18. keychar = String.fromCharCode(keynum)
  19. numcheck = /\d/
  20. return !numcheck.test(keychar)
  21. }
  22. </script>
  23.  
  24. <form>
  25. <input type="text" onkeypress="return noNumbers(event)" />
  26. </form>
  27.  
  28. </html>

输出: