-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
38 lines (32 loc) · 1.16 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Write Javascript code!
const form = document.querySelector('form');
const emailInput = document.querySelector('.email-box');
const errorMessage = document.querySelector('.email-error-text');
const errorIcon = document.querySelector('.email-error-icon');
const setError = () => {
emailInput.classList.add('email-error-border');
errorMessage.classList.remove('hidden');
errorIcon.classList.remove('hidden');
};
const setSuccess = () => {
emailInput.classList.remove('email-error-border');
errorMessage.classList.add('hidden');
errorIcon.classList.add('hidden');
};
const validateEmail = (email) => {
let reg =
/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return reg.test(String(email).toLowerCase());
};
const checkEmail = () => {
const emailValue = emailInput.value.trim();
if (emailValue === '' || !validateEmail(emailValue)) {
setError();
} else if (validateEmail(emailValue)) {
setSuccess();
}
};
form.addEventListener('submit', (event) => {
event.preventDefault();
checkEmail();
});