Показать сообщение отдельно
  #1 (permalink)  
Старый 19.03.2015, 16:10
Интересующийся
Отправить личное сообщение для NO_ONE Посмотреть профиль Найти все сообщения от NO_ONE
 
Регистрация: 01.03.2014
Сообщений: 19

Проверка input.value
Привет. Хочу создать простенький черный список email-адресов, чтобы value в форме проверялось на содержание запрещенных доменов из массива. Написал такой скрипт:

<!DOCTYPE HTML>
<html lang="ru">
  <head>
    <meta charset="utf-8">
    <title>Hi!</title>
  </head>
  <body>
      <script>
        function checker() {
          var emailValue = document.getElementById("email").value;
          var blackList = [ "@yandex.ru", "@mail.ru", "@test.ru"]; // для примера запрещаем любые адреса, оканчивающиеся на @yandex.ru, @mail.ru и @test.ru
          for(var i=0; i<blackList.length; i++) {
            if(emailValue.indexOf(blackList[i]) != -1) {
              alert("Нельзя использовать этот ящик.");
              return false;
            }
            else {
              return true;
            }
          }
        }
      </script>
    <form action="" onsubmit="return checker();">
      <input type="text" name="email" id="email" />
      <button type="submit">Ok</button>
    </form>
  </body>
</html>


Однако я в нем явно делаю что-то неправильно, потому что работает он только для первого значения из массива. Поправьте, пожалуйста, чтобы работало для всех.
Благодарю за ответы.
Ответить с цитированием