С помощью jQuery вы можете предотвратить ввод, возвращая false в событии keydown
.
//48-57 are number keys, 96-105 are numpad keys, the rest are control keys [backspace, tab, enter, left, up , right, down, delete]
$('input').on('keydown', e => (e.keyCode >= 48 && e.keyCode <=57) || (e.keyCode >= 96 && e.keyCode <=105) || [8,9,13,37,38,39,40,46].includes(e.keyCode));
https://jsfiddle.net/un18rw96/