Проблема с javascript onkeydown - event.which дают символы только в верхнем регистре

Я написал фрагмент кода JavaScript, чтобы нажать клавишу в текстовой области. Я использовал событие onkeydown для захвата нажатой клавиши и вызываю функцию, когда событие срабатывает. В рамках функции я использую event.which для нажатия клавиши. Но это не дает правильную нажатую клавишу. Для любого нажатого символа он дает значение Ascii соответствующего символа в верхнем регистре (только от 65 до 90). Он не дает значения Ascii для символов нижнего регистра, то есть от 97 до 122, даже если был напечатан символ нижнего регистра. Например, если я наберу 'a', это даст Ascii значение 'A' Кто-нибудь знает, почему это происходит? Вот код, который я использую -

var mainDoc = document.getElementById("mainDoc");
mainDoc.onkeydown = function(event){keyPress(event);}
function keyPress(event)
{
    alert("key code : "+ event.which + " );
}

Я попытался использовать событие onkeypress. Кажется, это работает нормально, но не захватывает alt, control, клавиши со стрелками и т. Д.

Ответы на вопрос(4)

Ваш ответ на вопрос