Есть скрипт, который ограничивает кол-во вводных символов до 3х и разрешены только цифры.
Но баг в том, что после того, как ввел 3 символа, убрал фокус с инпута, а потом еще раз взял в фокус инпут, то 3-й символ удаляется.
Как исправить скрипт так, чтобы можно было вводить ТОЛЬКО цифры, НЕЛЬЗЯ вводить первым 0, ограничить ввод только до 3 символов?
$('body').on('click keypress', '.btn-input', function(key) {
$this = $(this);
$maxLen = 2;
if (key.charCode < 48 || key.charCode > 57) return false;
if ($this.val().length > $maxLen)
$this.val($this.val().substr(0, $maxLen));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="btn-input order-count" type="text" >
https://jsfiddle.net/4gym7k8h/
$('body').on('click keypress', '.btn-input', function(key) {
$this = $(this);
$maxLen = 2;
// ограничение по длине
if ($this.val().length > $maxLen)
return false;
// ограничение по вводу нуля в начале
if ($this.val().length == 0 && key.charCode == 48)
return false;
// ограничение по символам
if (key.charCode < 48 || key.charCode > 57)
return false;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="btn-input order-count" type="text" >
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Набросал пример исходя из описания алгоритмаХочу услышать замечания, что стоило бы изменить в этом коде:
На англоязычном стаке задавал вопрос о проблемах подключения шрифта через @font-face