Ошибка проверки JS, даже когда не вводится никакого значения - PullRequest
0 голосов
/ 31 января 2011

У меня проблема, когда у меня есть 3 поля ввода. Первое поле предназначено для имени пользователя, а два других - для проверки пароля. Теперь поля пароля не могут содержать поле имени пользователя, поэтому я написал логику для отображения сообщения, если поля пароля содержат какую-либо часть имени пользователя. Однако, если в поле имени пользователя ничего нет, это же сообщение проверки все еще срабатывает, если в поле пароля что-то введено.

Вот код

Код получения поля имени пользователя:

if (document.getElementById("tUserName")) {
        uN = document.getElementById("tUserName").value;
    }
    else {
        uN = "";
    }

Поле имени пользователя regEx:

containsUsername = new RegExp(uN);

это код, который отвечает за сообщение об ошибке проверки:

if (document.getElementByIdd("tUserName")) {
        if (containsUsername.test(value)) {
            dojo.addClass(dojo.byId('result-userName'), 'hide');  
        }
        else {
            dojo.removeClass(dojo.byId('result-userName'), 'hide');
        }
    }

1 Ответ

1 голос
/ 31 января 2011

Я беспокоюсь, что я, должно быть, упускаю суть здесь, так что потерпите меня, если я ....

Итак, вы хотите, чтобы ошибка проверки не отображалась, когда они вводят пароли без чего-либо вполе username?

Можете ли вы просто проверить, что имя пользователя имеет значение, отличное от пустой строки, прежде чем пытаться запустить его через регулярное выражение?

if (document.getElementById("tUserName")) {
    if (document.getElementById("tUserName").value != '' && containsUsername.test(value)) {
        dojo.addClass(dojo.byId('result-userName'), 'hide');  
    }
    else {
        dojo.removeClass(dojo.byId('result-userName'), 'hide');
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...