Simple JS validation for two contact forms I'm not a pro in js so, my code is a mess (but it's working!). I would like to ask your help to reduce some redundancies in two cases. Those two are codes are affecting these two forms:

&lt;form action="contact.php" method="post" name="form1" onsubmit="return validateForm1()"&gt;
    &lt;input type="text" name="name" id="inputName1" placeholder="Name"&gt;
    &lt;input type="text" name="tel" id="inputTel1" placeholder="Telephone Number"&gt;
    &lt;input type="text" name="address" id="inputAdr1" placeholder="Address"&gt;
    &lt;input type="text" name="topic" id="inputTop1" placeholder="Topic"&gt;
    &lt;input type="email" name="email" id="inputMail1" placeholder="E-mail"&gt;
    &lt;input type="email" id="inputConfirmMail1" onblur="mailConfirm1()" placeholder="Confirm E-mail"&gt;
    &lt;input type="submit" value="Send"&gt;
&lt;/form&gt;

&lt;form action="contact.php" method="post" name="form2" onsubmit="return validateForm2()"&gt;
    &lt;input type="text" name="name" id="inputName2" placeholder="Name"&gt;
    &lt;input type="text" name="tel" id="inputTel2" placeholder="Telephone Number"&gt;
    &lt;input type="text" name="address" id="inputAdr2" placeholder="Address"&gt;
    &lt;input type="text" name="topic" id="inputTop2" placeholder="Topic"&gt;
    &lt;input type="email" name="email" id="inputMail2" placeholder="E-mail"&gt;
    &lt;input type="email" id="inputConfirmMail2" onblur="mailConfirm2()" placeholder="Confirm E-mail"&gt;
    &lt;input type="submit" value="Send"&gt;
&lt;/form&gt;


FIRST (a function to prevent my two forms to have empty inputs before submission)

function validateForm1() {
    var c = document.forms["form1"]["name"].value;
    var d = document.forms["form1"]["tel"].value;
    var e = document.forms["form1"]["address"].value;
    var f = document.forms["form1"]["topic"].value;
    var g = document.forms["form1"]["email"].value;
    if (c == null || c == "") {
            alert("insert your name");
            return false;
        }
        else if (d == null || d == "") {
            alert("insert your telephone");
            return false;
        }
        else if (e == null || e == "") {
            alert("insert your address");
            return false;
        }
        else if (f == null || f == "") {
            alert("insert a topic");
            return false;
        }
        else if (g == null || g == "") {
            alert("insert your email");
            return false;
        }
    }
    function validateForm2() {
        var c = document.forms["form2"]["name"].value;
        var d = document.forms["form2"]["tel"].value;
        var e = document.forms["form2"]["address"].value;
        var f = document.forms["form2"]["topic"].value;
        var g = document.forms["form2"]["email"].value;
        if (c == null || c == "") {
            alert("insert your name");
            return false;
        }
        else if (d == null || d == "") {
            alert("insert your telephone");
            return false;
        }
        else if (e == null || e == "") {
            alert("insert your address");
            return false;
        }
        else if (f == null || f == "") {
            alert("insert a topic");
            return false;
        }
        else if (g == null || g == "") {
            alert("insert your email");
            return false;
        }
    }


SECOND (I have a "confirm your email" area in my form so I did this function to make sure the user inputs the same value in both areas)

function mailConfirm1() {
    var mail1 = document.getElementById("inputMail1").value;
    var conMail1 = document.getElementById("inputConfirmMail1").value;
    if(mail1 != conMail1) {
        alert('both emails are not the same');
    }
}
function mailConfirm2() {
    var mail2 = document.getElementById("inputMail2").value;
    var conMail2 = document.getElementById("inputConfirmMail2").value;
    if(mail2 != conMail2) {
        alert('both emails are not the same');
    }
}
The simplest way to minimise your code is to change the functions you've written to accept parameters.

HTML:


&lt;form action="contact.php" method="post" name="form1" 
    onsubmit="return validateForm(this)"&gt;
...
&lt;input type="email" name="conEmail" id="inputConfirmMail1" 
    onblur="mailConfirm(this, 'inputMail1')" placeholder="Confirm E-mail"&gt;


JS:


function validateForm(form) {
  var c = form.name.value;
  var d = form.tel.value;
  var e = form.address.value;
  var f = form.topic.value;
  var g = form.email.value;

  if (!c) {
     alert("insert your name");
     return false;
  }
  else if (!d) {
     alert("insert your telephone");
     return false;
  }
  else if (!e) {
     alert("insert your address");
     return false;
  }
  else if (!f) {
     alert("insert a topic");
     return false;
  }
  else if (!g) {
     alert("insert your email");
     return false;
  }
}

function mailConfirm(input, target) {
  var mail = document.getElementById(target).value;
  var conMail = this.value;
  if(mail != conMail) {
     alert('both emails are not the same');
  }
}


However this doesn't stop you from submitting the form with both email addresses being different or having never entered the confirmation email.

Also, hand writing out every single validation rule for each individual input would be very time consuming and prone to business logic errors.

I would highly recommend you use an open source validator to assist like Parsley or Bootstrap Validator