Как найти, что значение меньше 108 и больше 0 в JavaScript: что-то не так в скрипте - PullRequest
0 голосов
/ 04 июня 2010

Я пишу этот код для проверки:

var num = $("#knum").val();
        if (isNaN(parseInt(num))) {
            $("#errorknum").html("Please define a number.");
        }
        else {
            if (num < 1 | num > 249) {
                $("#errorkrnum").html("your number must be less then 249 and can be greater than 1");
            }
            else {
                $("#errorknum").html("");
            }

Все хорошо, но, например, когда пользователь набирает 1242fdlfldsf, значит, это 1242, но она его принимает. Как я могу обработать это значение с помощью кода, например, например: 23232dkfj

Ответы [ 2 ]

3 голосов
/ 04 июня 2010

parseInt () всегда должен использоваться со вторым аргументом, чтобы сообщить ему, что вы ожидаете число base-10:

parseInt(num, 10)

Кроме того, вы не сохраняете его результаты, поэтому сравниваете строки.

И единственный | является побитовым оператором. Вы, вероятно, хотите ||.

1 голос
/ 04 июня 2010

Кроме того, когда вы делаете сравнение ИЛИ, вы должны использовать || не |:

if (num < 1 || num > 249)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...