var fflog = function(logit) { enableDebug = true; enableAlert = true; if(!enableDebug) { return false } if (console) { console.log(logit); } else { if (enableAlert) { alert(logit) } } } function getlastkeycode(e) { var code; if(e && e.which){ code = e.which } else if (e.event) { code = e.event.keyCode } e.lastpressdkey = code; var character = String.fromCharCode(code); fflog('Character was ' + character+' (keycode '+code+')'); } //into a function called on onload of body I have this, //document.forms[novo_ju].elements[novo_iu] = input elements document.forms[novo_ju].elements[novo_iu].onkeypress = function() { return getlastkeycode(this) } /* Logged in console of firebug: Character was � (keycode undefined) But logged only at load of page, after any pass to function.