onkeypress JavaScript (JS) Example: HTML DOM Objects – Event – onkeypress JavaScript (JS) Example

onkeypress JavaScript (JS) Example: HTML DOM Objects – Event – onkeypress JavaScript (JS) Example

Purpose: – Illustrates the for the .

View Other Attributes and Handlers for DOM Events

Prerequistes:

Syntax: Object.onkeypress=”yourjavascriptcode()” – Allows you to know when a keybord key has been pressed. onkeydown and onkeypress differ in what they return in keycode and charcode in the various browsers so you need to be careful.

Restrictions: None

Notes:

  • You can build your own library of syntax examples by using same web site over and over and just add new files to it.

Instructions:

  1. Use Visual Web Developer 2008
  2. Create new web site;
    • Click File/New Web Site
    • Select ASP.NET Website Template
    • Select C-Sharp for language
    • name of Web Site could be JavaScript_Syntax.
  3. Folder

  4. Add New folder named “HTMLDOMObjects”
    • Right-click project name in solution explorer;
    • add new folder;
    • name of folder should be: HTMLDOMObjects
  5. Add New subfolder to “HTMLDOMObjects” folder named “DOMEvent”
    • Right-click folder named “HTMLDOMObjects” in solution explorer;
    • add new folder;
    • name of folder should be: DOMEvent
  6. Add New subfolder to “DOMEvent” subfolder named “EventHandlers”
    • Right-click subfolder named “DOMEvent” in solution explorer;
    • add new folder;
    • name of folder should be: EventHandlers
  7. Add HTML Page Named onkeypress to EventHandlers subfolder
    • Right-click EventHandlers subfolder;
    • add new item;
    • Select HTML Page
    • HTML Page name should be onkeypress
  8. Click on copy code in code below to copy code into HTML Page onkeypress.htm
  9. Right-click on HTML page onkeypress.htm and select view in browser
View Example In Browser
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html>
<head>
<title>IdealProgrammer.com: onkeypress </title>
 
<!-- 
***************************************************
* This example is from http://idealprogrammer.com *
***************************************************
*****************************************************
 DOM Objects
*****************************************************
 
 
*****************************************************
***    DOM Event - EventHandlers   ***
*****************************************************
 
*****************************************************
*** onkeypress                                       
*****************************************************
 
SYNTAX:
object.onkeypress="yourjavascriptcode()"  Allows you to know when a key has been 
pressed. onkeydown and onkeypress differ in what they return in keycode and 
charcode in the various browsers so you need to be careful.
 
=================================================================
An EXCELLENT tutorial on event basics can be found at:
http://www.quirksmode.org/js/introevents.html
=================================================================
 
You can access the following properties thru the event handler:
 
Available Properties
altKey	     Retrieves a value that indicates the state of the ALT key.
altLeft      Retrieves a value that indicates the state of the left ALT key.
clientX	     Sets or retrieves the x-coordinate of the mouse pointer's position relative to the client area of the window, excluding window decorations and scroll bars.
clientY	     Sets or retrieves the y-coordinate of the mouse pointer's position relative to the client area of the window, excluding window decorations and scroll bars.
ctrlLeft	 Sets or retrieves the state of the left CTRL key.
offsetX	     Sets or retrieves the x-coordinate of the mouse pointer's position relative to the object firing the event.
offsetY	     Sets or retrieves the y-coordinate of the mouse pointer's position relative to the object firing the event.
returnValue	 Sets or retrieves the return value from the event.
screenX	     Sets or retrieves the x-coordinate of the mouse pointer's position relative to the user's screen.
screenY	     Sets or retrieves the y-coordinate of the mouse pointer's position relative to the user's screen.
shiftLeft	 Retrieves the state of the left SHIFT key.
srcElement	 Sets or retrieves the object that fired the event.
type	     Sets or retrieves the event name from the event object.
x	         Sets or retrieves the x-coordinate (in pixels) of the mouse pointer's offset from the closest relatively positioned parent element of the element that fired the event.
y	         Sets or retrieves the y-coordinate (in pixels) of the mouse pointer's offset from the closest relatively positioned parent element of the element that fired the event.
 
 
The captureEvents() method captures all the events of the event type passed.
 
When you have multiple events to capture, separate them with the pipe, |, character.
 
Here are the types of event you can capture:
 
Event.ABORT
Event.BLUR
Event.CHANGE
Event.CLICK
Event.DBLCLICK
Event.DRAGDROP
Event.ERROR
Event.FOCUS
Event.KEYDOWN
Event.KEYPRESS
Event.KEYUP
Event.LOAD
Event.MOUSEDOWN
Event.MOUSEMOVE
Event.MOUSEOUT
Event.MOUSEOVER
Event.MOUSEUP
Event.MOVE
Event.RESET
Event.RESIZE
Event.SELECT
Event.SUBMIT
Event.UNLOAD
 
 
-->
<!-- Script for example 1 -->
<script type="text/javascript">
 
function onlyNumbers(e) {
    var charCode
    var evt = e || window.event;
    charCode = evt.charCode || evt.keyCode;
    writeData('keyCode is ' + evt.keyCode);
    writeData('charCode is ' + evt.charCode);
    writeData('');
 
 
    if (charCode > 31 && (charCode < 48 || charCode > 57))
        return false;
 
    return true;
 
}
 
 
</script>
 
<!-- Script for example 2 -->
<script type="text/javascript">
    function inlineAge(e) {
        var charCode;
        var evt = e || window.event;
        charCode = evt.charCode || evt.keyCode;
        writeData('keyCode is ' + evt.keyCode);
        writeData('charCode is ' + evt.charCode);
        writeData('');
 
 
        if (charCode > 31 && (charCode < 48 || charCode > 57))
            return false;
 
        return true;
 
    }
 
 
 
</script>
<script type="text/javascript">
//javascript used by both examples
    function writeData(msg) {
        msgs.innerHTML += msg + '<br />';
    }
    function removeMsgsNow() {
        msgs.innerHTML = '';
    }
</script>
 <style type="text/css">
#msgs {
 width: 250px;
 height: 300px;
 overflow: auto;
 border: 1px solid #2EB2DC;
}
 
</style>   		
 
</head>
<body>
<h2>Example #1: Demonstrates onkeypress for only allowing numbers in field using recommended technique for registering events</h2>
 
Numbers Only:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text"
 id="NumbersOnly" />
 
<br />
<br />
 
 
<!-- Script for example 1 -->
<script type="text/javascript">
 
// This is the "traditional" and recommended technique for registering an event
// handler because it allows you to separate structure from behavior; the
// "inline" method of registering an event within xhtml tags is not
// the recommended approach because it blurs structure and behavior.
// For complete explanation, please see the following excellent article:
// http://www.digital-web.com/articles/separating_behavior_and_structure_2/
//
// Note: Using getElementById so registering event will work in FireFox
    //
 
var NumbersOnly = document.getElementById("NumbersOnly")
NumbersOnly.onkeypress = onlyNumbers;
 
 
 
 
 
</script>  
<hr />
 
<h2>Example #2: Using In-line javascript is simplier, but blurs structure and behavior</h2>
 
 
Age: <input type="text" onkeypress="return inlineAge(event)"  id="Text1" />
<br /> <br />
---Messages for both examples follow---<br />
<button id="removeMsgs">Remove messages</button> 
<p id="msgs"></p>
 
<script type="text/javascript">
//javascript used by both examples
    var msgs = document.getElementById("msgs");
    var removeMsgs = document.getElementById("removeMsgs")
    removeMsgs.onclick = removeMsgsNow;
</script>
 
</body>
 
</html>