I am currently in the process of learning JavaScript. My current goal is to figure out how to loop through an entire form and identify any errors that need to be pointed out.
The code I have put together is a mix of different tutorials that I found online, but unfortunately, it's not functioning correctly.
What I aim to achieve is to gather all elements from the form, iterate through them, and highlight any blank fields by displaying an error message on the screen either above the form or below the textboxes themselves.
This is the current version of my code. Any assistance in making this work according to my vision or providing guidance on the outlined concept would be greatly appreciated. Please keep explanations simple and concise if possible.
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<form method="post" action="" id="myForm">
<div id="validation"></div>
<p><label>Name<br><input type="text" name="Name"></label></p>
<p><label>Email<br><input type="text" name="Email"></label></p>
<p><input type="submit" value="Submit"></p>
</form>
<script>
var formsCollection = document.forms[0];
for (var i = 0; i < formsCollection.elements.length; i++) {
if (formsCollection.elements.value.length == 0) {
form.elements.input.border = "1px solid red";
form.Name.style.backgroundColor = "#FFCCCC";
}
return true;
}
document.getElementById("myForm").onsubmit = function () {
return Validate(this);
};
</script>
</body>
</html>
EDIT
<script>
function Validate() {
var formsCollection = document.forms[0];
for (var i = 0; i < formsCollection.elements.length; i++) {
if (formsCollection.elements[i].value.length == 0) {
form.elements.input.border = "1px solid red";
form.Name.style.backgroundColor = "#FFCCCC";
}
return true;
}
document.getElementById("myForm").onsubmit = function () {
return Validate(this);
};
}
</script>