Проверка 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> Однако я в нем явно делаю что-то неправильно, потому что работает он только для первого значения из массива. Поправьте, пожалуйста, чтобы работало для всех. Благодарю за ответы. |
NO_ONE,
<!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 var ok = true; for(var i=0; i<blackList.length; i++) if(emailValue.indexOf(blackList[i]) != -1) ok = false ; !ok && alert("Нельзя использовать этот ящик."); return ok } </script> <form action="" onsubmit="return checker();"> <input type="text" name="email" id="email" /> <button type="submit">Ok</button> </form> </body> </html> |
Часовой пояс GMT +3, время: 15:39. |