2011-10-02 2 views
4

나는 keyup 이벤트를 처리하고 있으며 문자를 입력해야합니다. 점을 입력하면 data.keyCode는 190이지만 String.fromCharCode (190)를 사용하여 변환하려고하면 "¾"기호가 나타납니다.키 입력 이벤트에서 문자 가져 오기

This reference은 190이라는 마침표입니다. That one은 브라우저 간 키 누르기 처리에 대한 기회가 없다고 말합니다. 그렇다면 어떻게해야 제대로 처리 할 수 ​​있습니까?

+0

keyUp을 사용하여 입력 된 문자 코드 만 가져오고 싶다면 코드를 얻은 후 일부 동작/검증을 수행하고 싶습니까? –

+0

그냥 서버로 보내려고합니다. – ulu

답변

5

저는 keyup 이벤트를 처리하고 있으며 입력되는 문자를 가져와야합니다.

신뢰할 수있는 것은 아닙니다. keyup에는 keyCode 만 표시되고 charCode은 표시되지 않습니다. 당신이 그것에 대해 생각하는 경우

(이 말이 다음 charCode이 문자가 수정 키로 이동 등의 기본 키에 다른 문자를 생성 할 수있는 키 누름에 입력되는과 관련되어 keyupkeydown에 이러한 이벤트는 즉시 새로운 문자가 입력되는과 관련되지 않기 때문에, 생성하는 알려진 문자가 없습니다.) 그래서

당신은 .문자이, 당신이 입력되었는지 여부를 알고에 의존하는 일을하는 경우 대신 keypress 이벤트를 사용해야합니다.

당신은 몇 가지 일반적인 키보드 레이아웃에 ./> 레이블이 추상적 가 해제 될 때 알고 싶은 경우에, 당신이 할 수있는 사용 keyup의 unixpapa 링크에 나와있는 keyCode와. 이처럼 keyCode을 사용하면 일반적으로 실제 키 위치가 입력 될 때 생성되는 문자가 아닌 게임 및 기타 기능에 사용됩니다.

불행히도 브라우저는이 키 코드를 포함한 일부 키 코드의 일관성없는 혼란을 일으켰습니다. 따라서 위에 나열된 모든 가능한 값을 브라우저에서 확인해야하며 브라우저의 기본 키보드 기간, 숫자 키패드/​​삭제 키 및 기본 삭제 키.