Последний нежелательный символ

Подскажите, как сделать так, чтобы число не вводилось больше установленного максимума ? Вроде прописал условие..оно вроде как бы и работает (не дает ввести больше нужного), но это визуально. Физически позволяет вводить еще 1 символ (но визуально он не отображается. Только логом в консоль, либо выводом в какой нибудь элемент span,p и т.п.)...как это фиксануть? мб упустил что то?

    $('.calculator').on('input', function(){


        var amount = new Number($('.amount').val());

        if (amount < minimum){
            $('.chang').attr('disabled',true);  
            $('.chang').addClass('disableds');  
            sum = (amount/strict*course).toFixed(2);
        }else if (amount > max)
    {
        $('.chang').attr('disabled',true);  
        $('.chang').addClass('disableds');          
        $('.amount').val(max);
        sum = (amount/strict*course).toFixed(2);
    }else{
        $('.chang').attr('disabled',false); 
        $('.chang').removeClass('disableds');
        sum = (amount/strict*course).toFixed(2);
    }
    var nickname = $('.nickname').val();
    $('.sumorder').text(sum);
    $('.charn').text(nickname);
    $('.count').text(amount);


});

Наглядно на скринах

введите сюда описание изображения введите сюда описание изображения


Ответы (1 шт):

Автор решения: CbIPoK2513

let max = 100;

$('input').on('input', function(){
  $(this).val(function(i, val){
    return val >= max ? max : val;
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<input type="number" val="0">

→ Ссылка