У меня есть следующие jQuery, чтобы разрешить только цифры и ограничить длину. Он работает нормально, но когда текст выделен, я не могу редактировать текст, он ничего не делает. Есть ли способ ввести новое значение, когда текст выделен с таким же условием
$('body').on('keydown', 'input[type=number][maxlength]', function (event) {
var key = event.keyCode || event.charCode;
var charcodestring = String.fromCharCode(event.which);
var txtVal = $(this).val();
var maxlength = $(this).attr('maxlength');
var regex = new RegExp('^[0-9]+$');
// 8 = backspace 46 = Del 13 = Enter 39 = Left 37 = right Tab = 9
if (key == 8 || key == 46 || key == 13 || key == 37 || key == 39 || key == 9) {
return true;
}
// maxlength allready reached
if (txtVal.length == maxlength) {
return false;
}
// pressed key have to be a number
if (!regex.test(charcodestring)) {
return false;
}
return true;
});
Спасибо