Имя электронной почты Javascript / длина домена - PullRequest
0 голосов
/ 01 декабря 2019

Я создал проект, который требует проверки формы с помощью Javascript. Все отлично работает, кроме одной маленькой части, и это сбивает меня с толку. Может быть, это просто формулировка задания, поэтому я подумал, что могу спросить здесь. Я новичок в Javascript, так что не кричите на меня, если я делаю это неправильно! Я еще учусь. Какой интересный язык!

Используя приведенный ниже код, я могу гарантировать, что адрес электронной почты и адрес электронной почты для подтверждения не будут превышать 252 символа, как того требуют инструкции. Однако в части инструкции говорится, что часть имени не может превышать 64 символа, а домен не может превышать 252 символа.

Я пропустил много кода, но не думаю, что он необходим для этой части. Если вы хотите увидеть остальные, дайте мне знать. Прошло довольно много времени, так как у меня есть около десятка полей, которые я проверяю.

Вопрос 1: Я проверял это ... вручную ... и это позволяет части до @ превышать 64 символа. Как это предотвратить?

Вопрос 2. Аналогичный вопрос объявления 1. Как запретить домену (после @) не превышать 252 символа?

код:

enter code here

            var email = document.getElementById('emailAddress');
            var cEmail = document.getElementById('cEmail');
            var emailconf1 = document.getElementById('emailAddress').value;
            var emailconf2 = document.getElementById('cEmail').value;
            var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        if (!filter.test(email.value)) 
            {
                alert('Please provide a valid email address');
                email.focus;
                return false;
            }
        if (!filter.test(cEmail.value)) 
            {
                alert('Please provide a valid email address in the confirm email box');
                email.focus;
                return false;
            }   
        if (emailconf1 != emailconf2)
            {
                alert('Passwords do not match')     
                return false;
            }   
        if (emailconf1.length>252 || emailconf2.length>252)
            {
            alert('Your email address is greater than 252 chracters')
            return false;
            }

        }

Флойд

...