-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripts.js
More file actions
45 lines (41 loc) · 1.81 KB
/
scripts.js
File metadata and controls
45 lines (41 loc) · 1.81 KB
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
39
40
41
42
43
44
45
function validateAndDisplay(event) {
let nameToValidate = document.getElementById("name").value;
let messageToValidate = document.getElementById("testimonial").value;
let emailToValidate = document.getElementById("email").value;
let emailValidationRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if (nameToValidate.length == 0) {
event.preventDefault();
return alert("Name field cannot be empty.");
}
else if (nameToValidate.length < 2) {
event.preventDefault();
return alert("Name must be at least 2 characters long.");
}
else if (messageToValidate.length < 15) {
event.preventDefault();
return alert("Testimonial must be at least 15 characters long.");
}
else if (emailToValidate.length == 0) {
event.preventDefault();
return alert("Email field cannot be empty.");
}
else if (!emailValidationRegex.test(emailToValidate)) {
event.preventDefault();
return alert("Invalid email address format. Format must be email@domain");
}
else {
event.preventDefault();
this.reset();
let validatedName = nameToValidate;
let validatedTestimonial = messageToValidate;
let outputName = document.getElementById("inputName");
let outputTestimonial = document.getElementById("inputTestimonial");
let defaultTestimonial = document.getElementById("defaultTestimonial");
alert("Thanks, " + validatedName + ", your testimonial was submitted successfully!");
outputName.textContent = validatedName;
outputTestimonial.textContent = validatedTestimonial;
defaultTestimonial.textContent = "";
}
}
let form = document.getElementById("testimonialForm");
form.addEventListener("submit", validateAndDisplay);