Введите тип текста не более 2 цифр - PullRequest
0 голосов
/ 05 июня 2018

Я знаю, что это возможно из type="number", но я не могу использовать это, потому что у меня также есть pattern с некоторым регулярным выражением, которое не совместимо с ним.

Есть ли способ ограничения вводадля type="text"?(В моем конкретном случае ограничение до 2 цифр после десятичной точки).

1 Ответ

0 голосов
/ 05 июня 2018

если вы хотите ограничить число символов в 2 знака после '.', Вы можете проверить, является ли общее число действительно числом

, и остановить выполнение сценариев через 2 знака после символа '.'

(я предотвращаю клавишу удаления с помощью e.wich == 8)

<!DOCTYPE html>
<html>
<head>
<script>
function myFunction(e) {
    var x = document.getElementById("numb").value;
    var carac = (e.which == 8) ? '' : String.fromCharCode(e.which);
    var nbr = x + carac;
        if ( isNaN(nbr) ) {
          e.preventDefault();
          document.getElementById("numb").value = '';
          alert ( 'Please write a Number!' );
        }

    if(! Number.isInteger(nbr*100)) {
        e.preventDefault();
        //document.getElementById("numb").value = '';
    }
}
</script>
</head>
<body>

<p>A function is triggered when the user is pressing a key in the input field.</p>

<input id="numb" type="text" onkeypress="myFunction(event)">

</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...