Help Capturing an onkeyup event

T

Trent

Hi. I know the basic way to assign event handlers:

<input onKeyUp="processEvent(event)" />

But how do I assign a function to the onKeyUp event in *javascript*
that can access the event object?

// get inputElement
alert("Some java script code");
inputElement.onkeyup = ????;

I know how to assign generic functions. This works:

inputElement.onkeyup = function() { alert("hello"); };

But how in the world do I assign a function that captures the "event"
object? I want something like:

inputElement.onkeyup = function(event) { processEvent(event) };

But that doesn't work right. Any ideas?
 
M

Martin Honnen

Trent wrote:

But how do I assign a function to the onKeyUp event in *javascript*
that can access the event object?

// get inputElement
alert("Some java script code");
inputElement.onkeyup = ????;

I know how to assign generic functions. This works:

inputElement.onkeyup = function() { alert("hello"); };

But how in the world do I assign a function that captures the "event"
object? I want something like:

inputElement.onkeyup = function(event) { processEvent(event) };

But that doesn't work right. Any ideas?

That last attempt should work with Mozilla/Netscape however the problem
is that IE has a global variable window.event that your event parameter
shadows so you need
inputElement.onkeyup = function (evt) {
if (!evt) {
evt = window.event;
}
// now use evt e.g.
alert(evt.keyCode);
};
 
T

Thomas 'PointedEars' Lahn

Trent said:
Hi. I know the basic way to assign event handlers:

<input onKeyUp="processEvent(event)" />

No. You must decide if you want to use HTML

<!-- attribute name case does not matter, no trailing / -->
<iNpUt onKeyUp="processEvent(event)">

or XHTML

<!-- element and attribute names must be lowercased,
trailing / (empty content model) -->
<input onkeyup="processEvent(event)"/>


PointedEars
 
E

Evan Wong

Does it work well finally? Today I need to implement the onkeyup event
but I found it doesn't work consistently. usually, the first few stroke
does not trigger the event, till I switch to another field and back to
this field. Then, the event can be fired for every keystroke. Any
idea?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,731
Messages
2,569,432
Members
44,832
Latest member
GlennSmall

Latest Threads

Top