Проверка форм в Javascript - PullRequest
0 голосов
/ 26 ноября 2009

Из вопроса на этом сайте я нашел следующий код romaintaz :

<script type="text/javascript">
function testField(field) {
    var regExpr = new RegExp("^\d*\.?\d*$");
    if (!regExpr.test(field.value)) {
      // Case of error
      field.value = "";
    }
}

</script>

Теперь у меня вопрос: как я могу заставить этот валидатор принимать только цифры и ничего больше? Любое целое число.

Ответы [ 3 ]

2 голосов
/ 26 ноября 2009

Вы можете разрешить регулярному выражению принимать только числовые цифры (только целые числа):

function testField(field) {
    var regExpr = /^[0-9]+$/;
    if (!regExpr.test(field.value)) {
      // Case of error
      field.value = "";
    }
}
0 голосов
/ 26 ноября 2009

Чтобы разрешить возможные целые числа со знаком:

function testField(field) {
    var regExpr = new RegExp("^(\+|-)?\d+$");
    if (!regExpr.test(field.value)) {
      // Not a number
      field.value = "";
    }
}
0 голосов
/ 26 ноября 2009

Принимает положительное и отрицательное целое число не более 17 цифр.

<script type="text/javascript">
function testField(field) {
    var regExpr = new RegExp("^-?\d{1,17}$");
    if (!regExpr.test(field.value)) {
      // Case of error
      field.value = "";
    }
}

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