Как определить маску ввода для цены с помощью jquery input mask - PullRequest
0 голосов
/ 12 июня 2019

Я хочу разрешить пользователю вводить сумму от 0 до 1000. При желании он может вводить сумму с центами.Примеры сумм, которые я хочу разрешить: 199,99, 29,90, 999,99, 0,01, 10, 999

Я пробовал это, но на самом деле это не работает:

$('.input-price').mask('000.00', {reverse: true});

Есть ли другие, как ты можешь мне предложить?

Ответы [ 2 ]

0 голосов
/ 12 июня 2019

Вы можете использовать заполнитель 9, что делает число необязательным:

$('.input-price').mask('099.99');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.js"></script>

<input type="text" class="input-price" placeholder="Enter price..." />
0 голосов
/ 12 июня 2019

Попробуйте это (JS)

    function isNumberDot(evt) {
        evt = (evt) ? evt : window.event;
        var charCode = (evt.which) ? evt.which : evt.keyCode;
        if (charCode > 31 && (charCode < 48 || charCode > 57)&& charCode != 46 && charCode != 127) {
            return false;
        }
        return true;
    }
<input type="text" value="0.00"
    onKeyPress="return isNumberDot(event);"
    autocomplete="off"  onFocus="this.select();" onChange="if(this.value=='NaN' || this.value==''){this.value='0.00'};this.value=parseFloat(this.value).toFixed(2);"
    >
...