Steven
Steven

Reputation: 25284

The 'charCode' property of a keyup event should not be used. The value is meaningless

HTML code:

<input type="text" id="secrecy" name="secrecy" size="3" maxlengh="3" />Days

Jquery code:

$('#secrecy').keyup(function(){
alert("ok");    
});

Error message:

The 'charCode' property of a keyup event should not be used. The value is meaningless.

The Jquery code doesn't work.When I input something into "secrecy", an alert doesn't come out.What's wrong?

Upvotes: 5

Views: 12229

Answers (6)

aberpaul
aberpaul

Reputation: 447

I followed Diego's advice and the warnings went away in Firebug. Also saw the same advice here. http://api.jquery.com/keyup/#comment-108497941

Upvotes: 1

Sk.
Sk.

Reputation: 460

change charCode -> XcharCode in source jquery-1.X.X.js and everything works OK

in the lastest version 1.4.4 there are "4" ocurrences...

Upvotes: 3

tuan.nguyenminh
tuan.nguyenminh

Reputation: 11

i've a trouble too. I assign event to but there not work!

$(document).ready(function(){ $("#test ul").bind("keyup",function(){ alert('Handler for .keyup() called.'); });

})

Upvotes: 1

Mottie
Mottie

Reputation: 86413

I tested your code and didn't see the error you mentioned, could you provide code that reproduces this error?

I was thinking that it could just be the browser you are using...

keyCode and charCode

The two properties are keyCode and charCode. Put (too) simply, keyCode says something about the actual keyboard key the user pressed, while charCode gives the ASCII value of the resulting character. These bits of information need not be the same; for instance, a lower case 'a' and an upper case 'A' have the same keyCode, because the user presses the same key, but a different charCode because the resulting character is different.

Explorer and Opera do not support charCode. However, they give the character information in keyCode, but only onkeypress. Onkeydown and -up keyCode contains key information.

From quirksmode site, but I don't see you using either in your example code. Are you using them?

Upvotes: 5

samg
samg

Reputation: 3526

Are you waiting to bind the event until the Dom is ready?

Something like this might help:

$(document).ready(function(){
  $('#secrecy').keyup(function(){
    alert("ok");    
  });
});

Upvotes: 8

SLaks
SLaks

Reputation: 887255

That's not an error; it's a warning.

It's probably generated by code within jQuery that copies the properties of the event object to a wrapper that gets passed to your handler.

You should ignore it.

Upvotes: 4

Related Questions