2016-01-08 2 views
0

Итак, я знаю, что мы можем найти, был ли нажат ключ, и мы можем знать, какой ключ был нажат, используя javascript.Определите, была ли нажата буква или номер - Javascript

Чтобы определить, является ли ключ был вниз или нажата, мы можем просто использовать JQuery

$("#some id").keydown(function() 

или

$("#m").keypress(function() 

Но это не работает очень хорошо для меня. Я пытаюсь определить, была ли нажата буква или число.

НО, чтобы быть эффективным, я не хочу, чтобы проверить с большим, если (или цикл, хуже), была ли нажата клавиша буква или символ (путем сравнения и проверки кода символа)

Есть ли встроенная функция javascript, которая определяет, было ли нажато число или нажата буква? есть ли эффективный способ сделать это? или я просто преувеличиваю вещи?

+0

Япа, довольно уверены, что ЛЮДИ сделали это раньше. – Jonathan

+1

Проверка по диапазонам ... Письма все рядом друг с другом. Точно так же цифры. Вам нужна только пара, если в статьях – Araymer

+0

вы можете просто проверить, какой диапазон кодов является числами, а какие - буквами. Я думаю, что цифры колеблются от 48 до 57 и буквы от 65-90 и num pad от 96-105 – chrisarton

ответ

5

Просто проверьте диапазон:

if (event.keyCode >= 48 && event.keyCode <= 57) { 
    // Number 
} else if (event.keyCode >= 65 && event.keyCode <= 90) { 
    // Alphabet upper case 
} else if (event.keyCode >= 97 && event.keyCode <= 122) { 
    // Alphabet lower case 
} 

Вот подробный answer на подобный вопрос. Хорошая рекомендация.

Код Количества подушечки является таким же, как над клавиатурой: Ссылка от Keyboard Keys and Key Code Values

+0

Я не заметил, что цифры и буквы были сгруппированы вместе, спасибо! –

+2

NP, @miqdadamirali получил несколько секунд передо мной. Убедитесь, что вы одобряете его ответ! – Araymer

+1

Ummm, а как насчет заглавных букв? и номера цифровой клавиатуры? –